列表

列表初识

  列表属于容器性数据类型。

li = [123, '狗', True, [1, 2, 3], {'name': 'Lon'}, (1, 2, 3)]

  其中包含有int型,例如123;字符串,例如'狗';bool值,例如True;列表,例如[1,2,3];字典,例如{'name':'Lon'};元组,例如(1,2,3)。

按照索引:

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[0])

结果:

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[1],type(l1[1]))

结果:

按照切片取值

起始切

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[:3])

结果:

结尾切

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[2:])

结果:

步长切

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[::2])

结果:

  增加一共有三种方式,分别为__.append()、__.insert()、__.extend()。

append('A')

  增加,在列表最后边添加需要添加的内容A,返回值为None。

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1.append('女神'))

  l1.append('女神')  这条语句只是一个动作,所以无法输出结果,当打印这条代码是,输出的结果为None,结果如下图:

追加字符串
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.append('女神')
print(l1)

结果:

追加列表
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.append([1, 2, 1111])
print(l1)

结果:

  给一个列表中添加循环添加数据。如下:

name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
while True:
user_name = input('请输入新员工的名字:q或Q退出').strip()
if user_name.upper() == 'Q':
break
name_list.append(user_name)
print('您已经成功添加了%s' % user_name)
print(name_list)

结果:

.insert(Num,A)

  插入,在索引为Num的位置插入A。

name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
name_list.insert(1, '哪吒')
print(name_list)

结果:

extend('ABC')

   迭代追加,将'ABC'拆分成本最小的单元添加在列表后边。

name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
name_list.extend('abc')
print(name_list)

结果:

  当添加的内容为列表时,列表内的字符串不进行拆分,只是拆分列表成列表的最小单元。

name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
name_list.extend([1, 2, 3, 4, 'abc'])
print(name_list)

结果:

.pop(Num)

  按照索引去删除,有返回值。删除索引号Num对应的元素。

name_list = ['wusir', 'alex', 'laonanhai', 'ritian', 'taibai']
ret = name_list.pop(0)
print(ret)
print(name_list)

结果:

.remove('A')

  按照元素去删除,删除元素A。

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.remove('alex')
print(l1)

结果:

.clear()

  清空列表。

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1.clear()
print(l1)

结果:

del

在内存级别删除列表。
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1
print(l1)

结果:

按照索引删除
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1[2]
print(l1)

结果:

切片删除
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1[:-1]
print(l1)

结果:

加步长删除
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
del l1[::2]
print(l1)

结果:

按照索引去改

正索引
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[0] = '肖锋'
print(l1)

结果:

负索引
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[-1] = '男神'
print(l1)

结果:

按照切片去改,先将切片的区域内的容全部删除,然后迭代着添加内容。

字符串
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[:3] = '范德萨发给ghfkhgh;'
print(l1)

结果:

列表
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
l1[:3] = [1111, 2222, 3333, 4444]
print(l1)

结果:

按照切片去查

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1[:4])

结果:

for循环

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
for i in l1:
print(i)

结果:

其他操作方法

len(A)

  计算A的元素个数。

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
cou = len(l1)
print(cou)

结果:

.count('A')

  统计A元素的个数。

l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1.count('taibai'))

结果:

.index()

  通过元素找索引,可以设置起始位置和结束位置。

源码
def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
"""
L.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.
"""
return 0
l1 = ['wusir', True, 'alex', 'laonanhai', 'ritian', 'taibai']
print(l1.index('alex', 2))

结果:

.sort()

从小到大,正序排序
l2 = [1, 3, 5, 9, 7, 6, 2, 4]
l2.sort()
print(l2)

结果:

从大到小,倒序排序
l2 = [1, 3, 5, 9, 7, 6, 2, 4]
l2.sort(reverse=True)
print(l2)

结果:

.reverse()

  翻转

l2 = [1, 3, 5, 9, 7, 6, 2, 4]
l2.reverse()
print(l2)

结果:

Python_列表初识及操作的更多相关文章

  1. Python_字符串初识及操作

    字符串初识及操作 str  'alex'.'1235443543'.'[1,2,3]'.可存放少量数据. 索引.切片.步长 索引编号 正向索引 'python' 012345 'p'的正向索引编号为0 ...

  2. 初识python 字符串 列表 字典相关操作

    python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 :  // 为取整除 返回的市商的整数部分 例如: 9 // 2  ---> 4  , 9.0 //  ...

  3. 小白的Python之路 day2 列表、元组操作

    1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 1 names = ['Tom','Jack','Qian'] 通过下标访问列表中 ...

  4. 获取列表的索引操作:enumerate

    通过循环获取列表的索引操作: 主要使用:enumerate product_list = [['Iphone7',5800], ['Coffee',30], ['疙瘩汤',10], ['Python ...

  5. redis:list列表类型的操作

    1. list列表类型的操作 1.1. lpush/rpush key value [value ...] 链表的头部(左侧)或尾部(右侧)插入值 语法:lpush key value [value ...

  6. [PY3]——内置数据结构(1)——列表及其常用操作

    列表及其常用操作_xmind图         about列表 列表是一个序列,用于顺序存储数据 列表分为两种:ArrayList(用数组实现).LinkedList(用链表实现) 定义与初始化 #l ...

  7. python-类对象以列表切片模式操作

    #类对象以列表切片模式操作 class Person: def __init__(self): self.cache=[] def __setitem__(self, key, value): #修改 ...

  8. Python基础——列表、元组操作

    列表.元组操作 列表: 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0 ...

  9. 【python系统学习06】一张图看懂列表并学会操作

    点击跳转-原文地址 数据类型 - 列表(list) 「目录:」 一张图了解列表 列表是什么 列表长啥样 语法格式 代码示例 格式特征 列表定义 列表操作 - 提取单个:偏移量 什么是偏移量 偏移量提取 ...

随机推荐

  1. 几个常用dos网络命令

    ping www.baidu.com 测试网络的同时,查看ip地址 1. 如图:百度的ip为  14.215.177.39.浏览器直接输入ip即可进入百度首页. 另外还有,14.215.177.38 ...

  2. orcFile split和读数据原理总结(hive0.13)

    http://blog.csdn.net/zhaorongsheng/article/details/72903431 官网关于orcfile的介绍 背景 Hive的rcfile格式已经使用多年,但是 ...

  3. eshint的配置

    { "strict" : "implied", //文件里面使用"use strict" "undef" : true, ...

  4. 1.01-url-open_code

    import urllib.request def load_data(): url = "http://www.baidu.com/" #get的请求 #http请求 #resp ...

  5. 如何在关闭ssh连接的情况下,让进程继续运行?

    #screen 1 回车后进入Screen子界面,此时putty标题栏会指示处于子界面状态,然后运行你的程序 #应用程序名 1 然后按下Ctrl+A后抬起,然后按下d键,此时切换回主界面,Putty的 ...

  6. git&github入门使用

    一.在Linux上安装Git 首先,你可以试着输入git,看看系统有没有安装Git,没有就yum一个,反正也是自己玩玩 二.版本库创建 什么是版本库呢?版本库又名仓库,英文名repository,你可 ...

  7. day25 Python __setattr__

    #__getattr__只有在使用点调用属性且属性不存在的时候才会触发 class Foo: x=1 def __init__(self,y): self.y=y def __getattr__(se ...

  8. jenkins发送生成的html报告作为邮件附件,但无内容的问题分析

  9. Java多线程(四)—— synchronized关键字续

    1.synchronized原理 在java中,每一个对象有且仅有一个同步锁.这也意味着,同步锁是依赖于对象而存在.当我们调用某对象的synchronized方法时,就获取了该对象的同步锁.例如,sy ...

  10. Java关键字(三)——static

    我们说Java是一种面向对象编程的语言,而对象是把数据及对数据的操作方法放在一起,作为一个相互依存的整体,对同类对象抽象出其共性,便是Java中的类,我们可以用类描述世间万物,也可以说万物皆对象.但是 ...