列表
列表类数组
基本语法:
声明列表
声明空列表
names=[]
声明非空列表
跟c++,java都不一样 这样声明是声明不了一个长度为40的数组,这样声明python列表长度就是1。python列表长度都是可变的,不用跟java,c++一样声明固定长度数组。
lista=[40]
print(len(lista))
操作(增、删、改、查)
增
追加
append()直接在列表的最后新增元素
names.append('akria')
print(names)
插入
insert(int,元素),是插在int的那个序号的元素前面
names.insert(0,'liang')
合并
extend(另一个列表名),将后面的列表接到前面的列表尾部,第二个不变
names=['liang', 'akira']
name=['guang']
names.extend(name)
print(names)
print(name)
可以进行嵌套,类似二维数组
names=['liang', 'akira']
name=['guang']
name.append(names)
print(name)
print(name[1][1])#可以使用类似二维数组的读法读
删除
del删除指定元素
name=['guang', ['liang', 'akira']]
del name[0]
print(name)
pop删除
默认删除最后一个元素
name=['guang', ['liang', 'akira']]
name.pop()
print(name)
也可以删除指定元素 pop()里面放序号
name=['guang', ['liang', 'akira']]
name.pop(0)
print(name)
清空clear
name=['guang', ['liang', 'akira']]
name.clear()
print(name)
输出结果就是:name=[]
所有元素都清空了。
改
改跟数组的改一样。
name=['guang', ['liang', 'akira']]
name[1]='dream'
print(name)
查
index()
返回的是第一个匹配的元素的序号 如果没有的话就抛出错误
name=['guang', ['liang', 'akira'],'guang']
print(name.index('guang'))
输出结果0
切片
语法
names[start:end]
。
切片就是取列表的一部分内容,顾头不顾尾,start取到end取不到。
name=['liang','akira','guang']
print(name[0:2])
输出:
用负数取也可以,但是还是正向的
name=['liang','akira','guang']
print(name[-2:-1])
步长
names[start:end:步长(默认是1)]
。
正数就是从左往右取,负数就是从右往左取。
name=['liang','akira','guang']
print(name[::-1])
空列表可当false
a=[]
if a:
print("列表不为空")
else:
print("列表为空")