python基础dict,集合,文件

Posted sunlizhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础dict,集合,文件相关的知识,希望对你有一定的参考价值。

字典是一种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指定,默认为当前文件位置。
os.rename(‘当前文件名‘,‘新文件名‘)   os模块进行重命名
os.remove(删除的文件名) os模块删除文件
os.mkdir(‘test‘) 当前目录下创建新目录test
os.chdir("/home/newdir")              当前目录改为‘/home/newdir‘
os.getcwd() 显示当前的工作目录
文件逐行打印,第六行添加字符串
# num = 0
# for i in fff.readlines():
# num += 1
# if num == 6:
# i = ‘‘.join([i.strip(),‘----‘])
# print(i.strip())
# fff.close()
 
 
 
 

































































































以上是关于python基础dict,集合,文件的主要内容,如果未能解决你的问题,请参考以下文章

Python snippet(代码片段)

Python-基础知识-字典dict和集合set

python 基础数据类型-字典dict

python基础数据类型之字典dict和集合set及其他(for,enumerate,range)。

Python之路第三篇:Python基础(10)——set集合

python基础-内置函数