1:列表:

Python的列表比C语言的数组强大的多,数组只能存放相同类型的数据,而列表则像一个大集装箱可以存放整形、浮点型、字符串、对象等

2:创建列表的方法

#创建一个普通列表

list1=[1,2,3,4,5]

#创建一个空列表

empty=[]

#创建一个混合列表

list2=['电子','',[1,2,'信息'],'sss']

3:向列表中添加元素的方法

1)append() 向列表末尾添加一个参数

member=['铮铮','懿懿']
member.append('在一起')
member
['铮铮', '懿懿', '在一起']

2)extend() 参数为一个列表,从原列表扩展原有列表

member=['铮铮','懿懿']
member.extend([1314,'在一起'])
member
['铮铮', '懿懿', 1314, '在一起']

3)insert() 两个参数,第一个参数代表列表所在位置,第二个参数代表要插入的元素

member=['铮铮','懿懿']
member.insert(1,'love')
member
['铮铮', 'love', '懿懿']

4)append()与extend()的比较

>>> name = ['F', 'i', 's', 'h']
>>> name.append('C')
>>> name
['F', 'i', 's', 'h', 'C']
>>> name.extend(['.', 'c'])
>>> name
['F', 'i', 's', 'h', 'C', '.', 'c']
>>> name.append(['o', 'm'])
>>> name
['F', 'i', 's', 'h', 'C', '.', 'c', ['o', 'm']]

这个例子看懂了吗?

4:从列表中获取元素的方法

和数组一样列表可以用们member[0]改变索引值来获取相应元素

>>> member=['铮铮','懿懿']
>>> member[0]
'铮铮'
>>> member[1]
'懿懿'

5:从列表删除元素的方法

1)remove() 参数为已知列表当中的名字,只要知道名字就行

>>> list2=['4.阿迪达斯','3.李宁','2.卡帕','1.耐克']
>>> list2.remove('3.李宁')
>>> list2
['4.阿迪达斯', '2.卡帕', '1.耐克']

2)del 语句

>>> list2=['4.阿迪达斯','3.李宁','2.卡帕','1.耐克']
>>> del list2[0]
>>> list2
['3.李宁', '2.卡帕', '1.耐克']

3)pop() 弹栈 取出最后一个元素并返回给你

>>> list2=['4.阿迪达斯','3.李宁','2.卡帕','1.耐克']
>>> list2.pop()
'1.耐克'
#从列表中取出一个元素并插入到最前面
list2=['4.阿迪达斯','3.李宁','2.卡帕','1.耐克']
list2.insert(0,list2.pop())
>>> list2
['1.耐克', '4.阿迪达斯', '3.李宁', '2.卡帕']

6:列表的分片(slice) 得到另外一个列表

>>> list1=[9,65,34,13,67,9,45,12]
>>> list1[0:3]
[9, 65, 34] >>> list1=[9,65,34,13,67,9,45,12]
>>> list2=list1[:]
>>> list2
[9, 65, 34, 13, 67, 9, 45, 12]
#注意list2是一个新的列表
如果list3=list1
list3不是一个新的列表,它和list1只是指向同一个位置而已,如下图
#列表分片还有一个隐藏值步长,步长不能为0默认为1
>>> list1=[9,65,34,13,67,9,45,12]
>>> list1[::2]
[9, 34, 67, 45]

7:列表的一些常用操作符

1)比较操作符 有多个元素时从第0个开始比较

list1=[1,8,3]
list2=[4,5,6]
>>> list1>list2
False >>> list1<list2
True

2)逻辑操作符

list1=[1,8,3]
list2=[4,5,6]
>>> list1<list2 and list1>list2
False

3)连接操作符

list1=[1,8,3]
list2=[4,5,6]
>>> list1 + list2
[1, 8, 3, 4, 5, 6]
#两个列表的类型相同时才能用’+‘如果要添加元素用前面的三种方法

4)重复操作符 ’*‘

list1=[1,8,3]
>>> list1*2
[1, 8, 3, 1, 8, 3]

5)成员关系符 in

>>> member=['1.耐克', '4.阿迪达斯', '3.李宁', '2.卡帕']
>>> '1.耐克' in member
True
>>> member=[[1,2,3,['abc']],'1.耐克', '4.阿迪达斯', '3.李宁', '2.卡帕']
>>> 'abc' in member[0]
False
>>> 'abc' in member[0][3]
True

>>> member=[[1,2,3,['abc',['a']]],'1.耐克', '4.阿迪达斯', '3.李宁', '2.卡帕']
>>> a in member[0][3][1]

True

 

如果是列表中的列表,要先给他包含一个层次

8:列表的好基友(列表类型的内置函数)

1)查看方式

>>> dir(list)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

2)经常要一起玩的基友(常用的内置函数)

count() 计算列表元素重复次数

>>> member=[1,1,1,1,1,1,1,2]
>>> member.count(1)
7

index()索引 返回元素所在列表中的位置

>>> member=[1,2,3,9,23,34,6,6,7]
>>> member.index(1)
0
>>> member=[1,2,3,9,23,34,6,6,7]
>>> member.index(9,2,7)
3

reverse 将列表原地翻转

>>> list1=[1,2,3,4]
>>> list1.reverse()
>>> list1
[4, 3, 2, 1]

sort() 默认从小到大排序,归并排序

>>> list1=[9,65,34,13,67,9,45,12]
>>> list1.sort()
>>> list1
[9, 9, 12, 13, 34, 45, 65, 67]

如何从大到小排序呢

>>> 列表名.sort()
>>> 列表名.reverse() #或者
>>> 列表名.sort(reverse=True)

clear()清空列表

>>> list2.clear()
>>> list2
[]

copy() 拷贝得到新的列表

>>>list1=[1, [1, 2, ['打飞机']], 3, 5, 8, 13, 18]
>>> list2 = list1.copy()
>>> list2
[1, [1, 2, [打飞机']], 3, 5, 8, 13, 18]

9:列表推导式

>>> list1 = [(x, y) for x in range(10) for y in range(10) if x%2==0 if y%2!=0]

list1 = []
for x in range(10):
for y in range(10):
if x%2 == 0:
if y%2 != 0:
list1.append((x, y)) ------------------------------------------------------------------------------------ #连线游戏
list1=['1.jost do it','2.you','3.can ','4.change the word']
list2=['4.阿迪达斯','3.李宁','2.卡帕','1.耐克']
>>> list3 = [name + ':' + slogan[2:] for slogan in list1 for name in list2 if slogan[0] == name[0]]

Python3 的列表的更多相关文章

  1. Python2和Python3中列表推导式的不同

    Python2和Python3中列表推导式的不同 python2 >>> x = 'my girl' >>> lst = [x for x in 'hello'] ...

  2. python3.7[列表] 索引切片

    python3.7[列表] 索引  切片 排序     #### 列表.sort 永久排序   sorted(列表) 临时排序   ### >>> print(sorted(a))[ ...

  3. python3中列表、元组、字典的增删改查说明详解

    python基础中的列表.元组.字典属于python中内置的序列数据结构.其中序列可以进行的操作包括索引.截取(切片).加.乘.成员检查等. 1.列表 列表(list)是最常用的python数据类型之 ...

  4. python2和python3关于列表推导的差别

    看下面两个例子: python2的环境:列表中的同名变量名被替换了 >>> x = 'my precious' >>> dummy = [x for x in 'A ...

  5. Python3 数据类型-列表

    序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 索引如下图: 列表命名(list): 组成:使用[]括起来,并且 ...

  6. [Python3] 005 列表的基本使用

    目录 1. 列表概述 2. 创建列表 3. 列表常用操作 (1) 访问列表 (2) 分片操作 1) 正向操作 2) 反向操作 3) 内置函数 id() 加入队伍 1. 列表概述 一组有顺序的数据的组合 ...

  7. Python3中列表、字典、元组、集合的看法

    文首,我先强调一下我是一个弱鸡码农,这个随笔是在我学习完Python3中的元组.字典.列表,集合这四种常见数据的数据类型的一些感想,如果有什么不对的地方欢迎大家予以指正.谢谢大家啦 回归正题:这篇随笔 ...

  8. Python3中列表字符串转数字

    比如我们有个列表: number = [']; 如果我们需要将列表里的元素转换为数字呢?最常用的大家可能会想到使用列表推导式: number = ['] number = [int(x) for x ...

  9. python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用

    在抓取网络数据的时候,有时会用正则对结构化的数据进行提取,比如 href="https://www.1234.com"等.python的re模块的findall()函数会返回一个所 ...

随机推荐

  1. springBoot系列教程04:mybatis及druid数据源的集成及查询缓存的使用

    首先说下查询缓存:查询缓存就是相同的数据库查询请求在设定的时间间隔内仅查询一次数据库并保存到redis中,后续的请求只要在时间间隔内都直接从redis中获取,不再查询数据库,提高查询效率,降低服务器负 ...

  2. Android 7.1 WindowManagerService 屏幕旋转流程分析 (三)

    三.屏幕的绘制 performSurfacePlacement()函数来触发window的绘制,这里最大的循环次数是6,当然一般不会到最大次数就会被Scheduled. final void perf ...

  3. vlc源码研究

    有位传说中的大神告诉我,我的p2p打洞打不通是因为,sdp描述信息中的地址不对 也就是IN IP4 XXX.XXX.X.XXX这一句 我看到确实是个局域网地址,那么vlc在接收到IN IP4 XXX. ...

  4. 深入浅出Android之学习笔记

    1.查看启动log [2011-01-11 14:44:21 - BMI] Android Launch! [2011-01-11 14:44:21 - BMI] adb is running nor ...

  5. 使用Template格式化Python字符串

    对Python字符串,除了比较老旧的%,以及用来替换掉%的format,及在python 3.6中加入的f这三种格式化方法以外,还有可以使用Template对象来进行格式化. from string ...

  6. AIO5凭证性质设置接收下/上差(%),但是订单操作不起效。

    问题: AIO5凭证性质设置接收下/上差(%),但是订单操作不起效. 例如: 现在采购订单下了200个,我想限制收货只能收两百以内. 在在线帮助上看到有接收下/上差(%)字段可以进行限制,但是在凭证性 ...

  7. PHP curl请求https遇到的坑

    PHP里curl对https的证书配置默认是服务器端要求验证的,如果服务器端没有配置证书验证,则无法请求https路径.如果为了简便使用不需要配置https证书的话,配置curl时将以下两项设置为fa ...

  8. 【三分法】hdu2438 Turn the corner

    Problem Description Mr. West bought a new car! So he is travelling around the city.One day he comes ...

  9. 汇编转移指令jmp原理

    在计算机中存储的都是二进制数,计算机将内存中的某些数当做代码,某些数当做数据.在根本上,将cs,ip寄存器所指向的内存当做代码,指令转移就是修改cs,ip寄存器的指向,汇编中提供了一种修改它们的指令- ...

  10. GO开发[二]:golang语言基础

    [TOC] 一.变量 1.声明变量 变量相当于是对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间. Go语言引入了关键字var,而类型 ...