python学习笔记二:列表

列表通过索引读取数据:

#索引读取数据
a = [1,2,3]
a[-1]

运行结果:3

列表支持嵌套:

b = [[1,2,3],[4,5,6]]
print(b)

运行结果:[[1, 2, 3], [4, 5, 6]]

列表可以修改:

b = [[1,2,3],[4,5,6]]
b[1][2]=4
print(b)

运行结果:[[1, 2, 3], [4, 5, 4]]

列表的切片:

a = [1,2,3,4,5,6,7]

#正向索引,取前4个元素,步长为1
print(a[0:4:1])
运行结果:[1, 2, 3, 4]

#反向索引
print(a[-1:-4:-1])
运行结果:[7,6,5]

#若取2,4,6,则步长为2
a[1::2]
运行结果:[2,4,6]

列表的添加操作:

#1.加号
a = [1,2,3]
b = [4,5,6]
print(a+b)
print(id(a))
运行结果:[1, 2, 3, 4, 5, 6]
87703240

#2.extend:接受参数b并将参数b的全部元素添加到原有列表中,原地修改列表而不新建列表
a.extend(b)
print(a)
print(id(a))
运行结果:[1, 2, 3, 4, 5, 6]
87703240
#3.append:添加任意对象到列表的末端
a = [1,2,3]
a.append(4)
print(a)
运行结果:[1,2,3,4]

a.append([5,6,7])
print(a)
运行结果:[1,2,3,4,[5,6,7]]
#4.insert:插入任意对象到列表中,可以控制插入位置
a = [1,2,3]
a.insert(1,'ab')
print(a)
运行结果:[1, 'ab', 2, 3]

列表的删除操作:

#1.del:通过索应删除指定位置的元素
a = [1,2,3]
del a[0]
print(a)
运行结果:[2,3]
a = [1,2,3]
b = a
del a[:] #删除对象,并没删除地址
print(id(a))
b
运行结果:94939912
[]
a = [1,2,3]
b = a
del a #删除地址,并没有删除对象
b
运行结果:[1, 2, 3]
print(id(a))
运行结果:NameError: name 'a' is not defined
#2.remove:移除列表中找到的第一个值,如果没找到,会报错
a = [1,2,3,2]
a.remove(2)
print(a)
运行结果:[1,3,2]
#3.pop:返回最后一个元素,并从list中删除它
a = [1,2,3]
b = a.pop()
print(b)
print(a)
运行结果:3
[1,2]

列表的成员关系:

#in not in可以判断一个元素是否在列表里
a = [1,2,3]
print(1 in a)
运行结果:True

print(2 not in a)
运行结果:False

print(3 in a)
运行结果:True

列表推导式:

a = [i*i for i in range(1,6)]
print(a)
运行结果:[1, 4, 9, 16, 25]

#加入判断语句
b = [i for i in range(1,6) if i%2==1]
print(b)
运行结果:[1, 3, 5]
#生成字符串
['the %s' % i for i in range(6)]
运行结果:['the 0', 'the 1', 'the 2', 'the 3', 'the 4', 'the 5']
#生成元组
[(x,y) for x in range(2) for y in range(2)]
运行结果:[(0, 0), (0, 1), (1, 0), (1, 1)]
#生成字典
dict([(x,y) for x in range(2) for y in range(2)])
运行结果:{0: 1, 1: 1}
#其实是先生成了0:0,再生成0:1,后面的键0将前面的键0覆盖了

列表的排序翻转:

#列表的排序和翻转:是直接修改原列表,返回值为none
a = [1,2,4,3]
b = a.sort()#从小到大
print(a)
print(b)
运行结果:[1, 2, 3, 4]
None

c = a.reverse()#原地翻转
print(a)
运行结果:[4, 3, 2, 1]

内置list方法:

a = 'abc'
list(a)
运行结果:['a', 'b', 'c']

b = (1,2,3,4)
list(b)
运行结果:[1, 2, 3, 4]

猜你喜欢

转载自blog.csdn.net/qq_24946843/article/details/83145484