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:

posted on 2018-06-20 23:14  奥喵  阅读(404)  评论(0编辑  收藏  举报

导航