Python 笔记 002 列表 list 操作合集

python list 索引和切片

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']


python 反转 新生成了一个值



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()



python list 追加元素 append() 会改变原始数据,没有返回值

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]


python list 合并 extend() 会改变原始数据,没有返回值

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


python list 插入元素 insert() 会改变原始数据,没有返回值

与 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 已经超过了最大索引值,会自动将所要插入的元素放到列表的尾 部,即


python list 删除制定元素 remove() 会改变原始数据,没有返回值

la = ['qiwsir', 'github', 'io']
# list.remove(x)  如果x没有在list中,会报错。
la.remove('github')
print(la)  # ['qiwsir', 'io']


python list 删除制定元素 pop() 会改变原始数据,返回被删除元素

la = ['qiwsir', 'github', 'io']
# list.pop([i])  默认删除最后一个  i超出索引返回也会报错
print(la.pop()) # "io"
print(la)  # ['qiwsir', 'github']


python list 排序 sort() 会改变原始数据,没有返回值

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']


python 预留关键字

# 查询哪些是保留字,给变量取名的时候避开
import keyword
keyword.kwlist

你可能感兴趣的:(Python,基础,python,自动化)