创建列表subject = ["Liunx","python","web","java"]
#读取列表 print(subject) #打印显示 ['Liunx', 'python', 'web', 'java'] #列表的切片,切片的索引是从0开始的 print(subject[0]) # 0 号索引,也就是列表的第一个元素 print(subject[1]) print(subject[2]) print(subject[3]) print(subject[1:3])# 读取列表的第二个元素至第四个元素,第四个元素取不到,有头无尾 print(subject[-1])#读取列表的最后一个元素 print(subject[-2]) # 读取列表的倒数第二个元素 print(subject[-3:]) #读取列表的倒数第三个元素至最后一个元素 #打印显示 Liunx python web java ['python', 'web'] java web ['python', 'web', 'java']
列表的追加
创建 列表 subject = ["Liunx","python","web","java"]
#追加列表 subject.append("php") #打印列表 print(subject) ['Liunx', 'python', 'web', 'java', 'php'] ##追加内容到指定的位置 subject.insert(1,"windows") # 将windows ,插入到1号索引 #打印 列表 print(subject) ['Liunx', 'windows', 'python', 'web', 'java', 'php'] # 1号索引已变成Windows 了 subject.insert(2,"UI") #打印 列表 print(subject) ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php']
# 列表的删除
创建 列表 subject = ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php']
#删除指定元素 subject.remove("php") #打印列表 print(subject) ['Liunx', 'Unix', 'UI', 'python', 'web', 'java'] #根据索引删除 del subject[0] #删除Liunx #打印列表 print(subject) ['Unix', 'UI', 'python', 'web', 'java'] # pop 默认删除最后一个元素,此处删除java subject.pop() #打印列表 ['Unix', 'UI', 'python', 'web'] #查找某个名称的索引 print(subject.index("python")) 2
#统计元素的个数
创建列表 subject = ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php','python']
print(subject.count("python")) print(subject) 2 #列表的反转 subject.reverse() print(subject) ['python', 'php', 'java', 'web', 'python', 'UI', 'windows', 'Liunx'] #列表的排序 排序规则按照assci 码规则 subject.sort() print(subject) ['Liunx', 'UI', 'java', 'php', 'python', 'python', 'web', 'windows'] # 列表的清除 subject.clear() print(subject) []
列表的拓展 extend
创建列表
subject = ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php','python']
subject2 = ["a","b","c"]
subject.extend(subject2) print(subject) print(subject2) #打印列表 ['Liunx', 'windows', 'UI', 'python', 'web', 'java', 'php', 'python', 'a', 'b', 'c'] ['a', 'b', 'c']
#列表的copy
创建列表 subject = ["Liunx","python","web",["c++","ruby"],"java"]
subject = ["Liunx","python","web",["c++","ruby"],"java"] subject3 = subject.copy()#拷贝subject 的内容 #打印列表 print(subject) print(subject3) ['Liunx', 'python', 'web', ['c++', 'ruby'], 'java'] ['Liunx', 'python', 'web', ['c++', 'ruby'], 'java'] #修改 subject 元素的内容 subject[0] ="GNU liunx subject[3][0]="C++" #打印列表 print(subject) print(subject3) ['GNU liunx ', 'python', 'web', ['C++', 'ruby'], 'java'] # subject ['Liunx', 'python', 'web', ['C++', 'ruby'], 'java'] # subject 3 可以看到 修改subject[0] ="GNU liunx 的内容没有在subject3 里面生效,subject[3][0]="C++" 这个元素生效。浅copy 只copy 一层,嵌套部分的不会被copy ,只是copy 了里面的内存地址,当subject[0] ="GNU liunx 相当于重新开辟了一块内存地址,所以subject3[0] 读取的元素内容还是Liunx 浅拷贝 对应的是深拷贝 import copy subject = ["Liunx","python","web",["c++","ruby"],"java","PHP"] # 里面重新赋值 subject[0] ="small liunx " subject[3][0]="C++" subject3 = copy.deepcopy(subject) print(subject) print(subject3) ['small liunx ', 'python', 'web', ['C++', 'ruby'], 'java', 'PHP'] ['small liunx ', 'python', 'web', ['C++', 'ruby'], 'java', 'PHP']
#列表的循环取值
#创建列表 subject = ["Liunx","python","web",["c++","ruby"],"java","PHP"]
subject = ["Liunx","python","web",["c++","ruby"],"java","PHP"] for i in subject: print(i) #打印列表 Liunx python web ['c++', 'ruby'] java PHP
Python 的列表操作至此完成。
原文地址:http://blog.51cto.com/sdsca/2050626