a = ['2', 3, 'qiwsir.github.io']
print(a[0]) # '2'
print(a[:2]) # ['2', 3]
print(a[1:]) # [3, 'qiwsir.github.io']
# 二次切片
print(a[2][7:13]) # 'github'
# list 和 str 类似
lang = "python"
lang.index("y") # 1
lst = ['python','java','c++']
lst.index('java') # 1
# 从右边开始取
lang[-1] # 'n'
lst[-1] # 'c++'
# 从右边开始切片要注意 序列的切片,一定要左边的数字小于右边的数字
lang[-1:-3] # '' 这是错误的写法
lang[-3:-1] # 'ho'
lst[-3:-1] # ['python', 'java']
新生成了一个值
lang = 'python'
print(lang[::-1]) # 'nohtyp'
print(list(reversed(lang ))) # ["n", "o", "h", "t", "y", "p"]
print(lang) # 'python'
alst = [1, 2, 3, 4, 5, 6]
print(alst[: : -1]) # [6, 5, 4, 3, 2, 1]
print(alst) # [1, 2, 3, 4, 5, 6]
print(list(reversed(alst))) # [1, 2, 3, 4, 5, 6]
和 str 类似 有以下方法
len()
in()
max()
min()
会改变原始数据,没有返回值
a = ["good", "python", "I"]
a.append("like")
print(a) # ['good', 'python', 'I', 'like']
a.append(100)
print(a) # ['good', 'python', 'I', 'like', 100]
# 两种方法都可以
a[len(a):]=[3] #len(a),即得到列表的长度
print(a) # ['good', 'python', 'I', 'like', 100, 3]
会改变原始数据,没有返回值
la = [1, 2, 3]
lb = ['qiwsir', 'python']
la.extend(lb)
print(la) # [1, 2, 3, 'qiwsir', 'python']
print(lb) # ['qiwsir', 'python']
la = [1, 2, 3]
b = "abc"
# list 可以 合并 str 但是会把 str 拆开
la.extend(b)
print(la) # [1, 2, 3, 'a', 'b', 'c']
c = 5
la.extend(c)
print(la) # 报错 'int' object is not iterable
同上,第二种写法
la = [1, 2, 3, 'a', 'b', 'c']
lb = ['qiwsir', 'python']
la[len(la):]=lb
print(la) # [1, 2, 3, 'a', 'b', 'c', 'qiwsir', 'python']
count()
是一个帮着我们弄清楚列表中元素重复出现次数的方法
la = [1, 2, 1, 1, 3, 'a', 'a']
la.count(1) # 3
la.count('a') # 2
# la中没有5,但是如果用这种方法找,不报错,返回的是数字0
la.count(5) # 0
会改变原始数据,没有返回值
与 list.append(x) 类似, list.insert(i,x) 也是对list元素的增加。只不过是可以在任何位置
增加一个元素。
最好不要用 list 作为变量名字,因为它是Python 中内置的对象类型的名字
la = ['qiwsir', 'github', 'io']
# list.insert(i, x) i 是将元素 x 插入到列表中的位置 从0 开始
la.insert(0,"algorithm")
print(la) # ['algorithm',qiwsir', 'github', 'io']
# ,如果遇到那个 i 已经超过了最大索引值,会自动将所要插入的元素放到列表的尾 部,即
会改变原始数据,没有返回值
la = ['qiwsir', 'github', 'io']
# list.remove(x) 如果x没有在list中,会报错。
la.remove('github')
print(la) # ['qiwsir', 'io']
会改变原始数据,返回被删除元素
la = ['qiwsir', 'github', 'io']
# list.pop([i]) 默认删除最后一个 i超出索引返回也会报错
print(la.pop()) # "io"
print(la) # ['qiwsir', 'github']
会改变原始数据,没有返回值
la = [6, 1, 5, 3]
la.sort()
print(la) # [1, 3, 5, 6]
# 从大到小排序
a.sort(reverse=True)
print(la) # [6, 5, 3, 1]
# 按元素长度排序
lst = ["python","java","c","pascal","basic"]
lst.sort(key=len)
print(lst) # ['c', 'java', 'basic', 'python', 'pascal']
# 查询哪些是保留字,给变量取名的时候避开
import keyword
keyword.kwlist