python(list、字典、元组、字符串方法、文件读写)
1、list
定义list
a = []
添加元素
a.append('xx') #在list末尾添加
a.insert(0,'abc') #在指定某位置添加元素、指定的下标不存在就在末尾添加
修改元素
a[0] = 'bb' #找到元素下标,重新赋值
查看
print(a)
print(a[0])
a.count('abc') #查看元素在list里的个数,不存在返回0
a.index('abc') #查元素下标,重复多个,显示第一个,不存在则报错
删除元素
a.pop() #默认删除最后一个元素,会返回删除元素的值,或者指定下标,存在下标则删除,不存在则报错
a.remove('xx') #删除list里元素,如果存在多个,只能删除一个
del a[0]
a.clear() #清空整个list
切片
a[0:3]
#顾头不顾尾,不会取值最后一位
#[0:] [:3] [::1]步长
不重要的
a.reverse() #反转list顺序
a.sort() #排序、默认升序,指定reverse=True则降序
多维数组
a = [1,2,3]
b = [4,5,6]
a.extend(b) #合并两个list
列表生成式
例如: nums =[1,2,3,4,5],转换成 nums=['1','2','3','4','5']
new_nums = [str(x) for x in nums]
2、字典
字典是无序的
定义字典
a = {}
查
a = {'bb':'cc'}
a.get('bb') #get不到,返回None
增加
a['dd'] = 'ee'
a.setdefault('ff','gg')
修改
a['dd'] = 100 #key存在,重新赋值
删
a.pop('dd') #因为字典是无序的,必须传key
a.popitem() #默认随机删除一个
del a['bb']
a.clear() #清空字典
3、字符串方法
for i,t in numerate(a): #可以同时循环下标和值
'',strip() #去空格和换行符
‘’,split() #分割字符串
‘’,upper() #变成大写
‘’,lower() #变成小写
'',count('aa') #出现的次数
‘,'.join() #把list变成字符串并且以,分割
‘’.endswith #判断以什么什么结尾,返回True,F
''.startswith #判断以什么什么开头
‘’.isdigit() #判断是不是纯数字
new_sql = sql.replace('select','update')#字符串替换,第一个old,new
eval() #将符合字典格式的字符串转为字典
4、元组
python中的小括号( ):代表tuple元组数据类型,元组是一种不可变序列。
python示例:tup = (1,2,3)
5、文件读写
打开
f = open('xx') #默认只读模式打开
r只读 r+读写,文件不存在会报错
w写 w+读写,会清空文件
a追加 a+读写,文件指针默认在末尾
打开图片、视频、音频,要用rb、wb、ab #bytes,以二进制模式打开
例如:下载图片
import requests
url = 'http://www.nnzhp.cn/wp-content/uploads/2018/01/601a335c499837a995ae10867fc36101.png' #图片的url
img = requests.get(url).content
f = open('hhh.jpg','wb')# bytes ,以二进制模式打开
f.write(img)
f.seek(0) #移动指针到最前面,a+打开需要用这个
f.read() #读取文件里所有内容,返回字符串,读完指针在末尾
f.readline() #只读一行内容,返回字符串
f.readlines() #读取文件里所有内容,返回list,list里面每个元素是每行数据
f.write('aa') #只能写字符串
f.writeslines() #写可迭代对象
f.tell() # 获取当前文件指针的位置
f.close #关闭文件
f.flush() #立即把缓存区里面的内容写到磁盘里面,当write后,文件中没有写入,这种现象,正常,是由于缓存区没有满,等缓存区满了后才会写入
避免忘记关文件
with open('a.txt','w') as a: #a是变量名
a.write('hhh')
当代码执行完后,自动关闭
可以打开多个文件,用逗号隔开
with open('a.txt','w') as a,open('b.txt','w') as b,open('c.txt','w') as c: