字典是一种key:value的数据类型 dict1{ 'stud1':'孙礼昭', 'stud2':'slz', 'stud3':'sunlizhao', } dict是无序的,key是唯一的 天生去重 增加: dict1['stud4'] = '苍井空' 修改: dict1['stud4'] = '武藤兰' 删除: 指定key删除 dict1.pop('stud3'); del dict1['stud2'] 随机删除: dict1.popitem() 查找: 标准用法: stud1 in dict1 通过key查找value,不存在会返回none dict1.get('stud1') 嵌套:av_catalog = { "欧美":{ "www.youporn.com": ["很多免费的,世界最大的","质量一般"], "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"], "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"], "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"] }, "日韩":{ "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"] }, "大陆":{ "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"] }}av_catalog["大陆"]["1024"][1] += ",可以用爬虫爬下来"print(av_catalog["大陆"]["1024"])#ouput['全部免费,真好,好人一生平安', '服务器在国外,慢,可以用爬虫爬下来'] 其他姿势: 整个dict的value dict1.values() 整个dict的key dict1.keys()
set要求里面的元素必须是不可变的:不能是列表,字典,,但他本身却是可变的,不能用作字典的键 数据类型 :整型 浮点型 字符串 列表 元组(tuple) 字典 布尔 集合 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集、差集、并集等关系 s = set([3,5,9,10,3,9]) 创建一个数值集合 t = set("Hello") 创建一个唯一字符的集合 print(a.intersection(b)) 交集,把相同的内容取出来 简写(a&b) print(a.union(b))# 并集,把a和b组成一个大集合合在一块简写(a|b) print(a.difference(b))# 差级 a里面有的,但b里面没有的 简写(a-b) print(a.symmetric_difference(b)) 反交集,把把没有重复的内容取出来 简写(a^b) # print(a.issuperset(b))# b中的每一个元素是否都在a中 a>=b t.add('x') # 添加一项 s.update([10,37,42]) # 在s中添加多项 文件操作 1打开文件,获得文件句柄并赋值给一个变量 2通过句柄对文件进行操作 3关闭文件
打开文件的模式有:
r,只读模式(默认)。
w,只写模式。【不可读;不存在则创建;存在则删除内容;】
a,追加模式。【可读; 不存在则创建;存在则只追加内容;】
r+,可读写文件。【可读;可写;可追加】
w+,写读
a+,同a
"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)
"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)
rb wb ab
模式rr+ww+aa+读++ + +写 +++++创建 ++++覆盖 ++ 指针在开始++++ 指针在结尾 ++ import os f = open('feb8-1.txt','r+') 打开文件 f.write('hello') 写入内容 f.read(20) read()方法就是把所有的数据提取出来,参数限制提取数量,中文英文占位相同 print(fff.readline()) 打印当前游标所在单行 print(fff.readlines()) 打印游标之后的所有内容(多行) f.close() 关闭打开的文件 f.tell() 文件中光标的位置(中:3,英:1) f.seek(3) 人为的将光标定位到3的位置 f.flush() 将内容从内存写入到磁盘 f.truncate([size]) 截取文件,截取的字节通过size指定,默认为当前文件位置。 print(fff.readlines()) 打印游标之后的所有内容(多行) f.close() 关闭打开的文件 f.tell() 文件中光标的位置(中:3,英:1) f.seek(3) 人为的将光标定位到3的位置 f.flush() 将内容从内存写入到磁盘 f.truncate([size]) 截取文件,截取的字节通过size指定,默认为当前文件位置。 <span style="color:#000000">os.<strong><span style="color:#00ff00">rename</span></strong>('当前文件名','新文件名') os模块进行<span style="color:#00ff00">重命名</span> os.<strong><span style="color:#00ff00">remove</span></strong>(删除的文件名) os模块<span style="color:#00ff00">删除文件</span> os.<strong><span style="color:#00ff00">mkdir</span></strong>('test') <span style="color:#00ff00">当前目录下创建新目录</span>test </span> os.chdir("/home/newdir") 当前目录改为'/home/newdir' os.getcwd() 显示当前的工作目录 os.getcwd() 显示当前的工作目录 <span style="color:#000000">文件逐行打印,第六行添加字符串 # num = 0 # for i in fff.readlines(): # num += 1 # if num == 6: # i = ''.join([i.strip(),'----']) # print(i.strip()) # fff.close() </span> <span style="color:#000000"> </span>