1
list赋值
blist = alist[:] #两个独立list,互不影响
clist = alist #二者内存相同,修改其中一个list,另一个也被修改
list排序
list.sort(key=lambda x: x[1])
m = sorted(list, lambda x: x[1])
数字转数组
num = 1234
num_list = list(map(int, str(num))) #[1, 2, 3, 4]
list多条件排序
- 如果对此元组进行排序,要求是按第一个元素升序,如果第一个元素相同,按第二个元素的升序排列
ls=[(1,2),(2,2),(5,4),(5,3),(8,4)]
- 如果对此元组进行排序,要求是按第一个元素升序,如果第一个元素相同,按第二个元素的升序排列
ls=[(1,2),(2,2),(5,4),(5,3),(8,4)]
ls.sort(key=lambda x:(x[0],x[1]))
print(ls) #[(1, 2), (2, 2), (5, 3), (5, 4), (8, 4)]
- 如果对此元组进行排序,要求是按第一个元素升序,如果第一个元素相同,按第二个元素的降序排列
ls=[(1,2),(2,2),(5,4),(5,3),(8,4)]
ls.sort(key=lambda x:(x[0],-x[1]))
print(ls) #[(1, 2), (2, 2), (5, 4), (5, 3), (8, 4)]
any和all
- any() #只要有一个True,则返回True,全False才返回False
样例:判断字符串中是否有数字
my_string = "coding**is**cool**345"
are_there_digits = [char.isdigit() for char in my_string]
print(any(are_there_digits))
# 输出True,其中有3 4 5都是数字,返回True;如果全不是数字,则返回False
True
- all() #只要有一个False,则返回False,全True才返回True
样例:判断字符串中的所有字符是否都是字母
my_string = "coding**is**cool"
are_all_letters = [char.isalpha() for char in my_string]
print(all(are_all_letters))
# Output 字符串中不全是字母,也有*,所以返回False;如果全是字母,则返回True
False
列表的enumerate()
enumerate(list, start=0) #返回下标和值,默认从0开始
for index,value in enumerate(L, 1): #指定索引从1开始计数
print(index, value)
文件的x模式
先判断文件是否存在,如果存在不覆盖写入,如果不存在,则w模式打开文件写入内容
with open('onefile', 'xt') as f:
f.write('abc\n')