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
模式 r r+ w w+ a a+ 读 + + + + 写 + + + + + 创建 + + + + 覆盖 + + 指针在开始 + + + + 指针在结尾 + +
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基础-week03 集合 , 文件操作 和 函数详解
一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...
- python基础数据类型--集合(set)
python基础数据类型--集合(set) 集合是一个数学概念由一个或多个确定的元素所构成的整体叫做集合 集合中的三个特征 1.确定性(元素必须死可hash) 2.互异性(去重) 3.无序性(集合中的 ...
- 第三章:Python基础の函数和文件操作实战
本課主題 Set 集合和操作实战 函数介紹和操作实战 参数的深入介绍和操作实战 format 函数操作实战 lambda 表达式介绍 文件操作函数介紹和操作实战 本周作业 Set 集合和操作实战 Se ...
- python基础3之文件操作、字符编码解码、函数介绍
内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: #/usr/bin/env ...
- python基础——元组、文件及其它
Python核心数据类型--元组 元组对象(tuple)是序列,它具有不可改变性,和字符串类似.从语法上讲,它们便在圆括号中,它们支持任意类型.任意嵌套及常见的序列操作. 任意对象的有序集合:与字符串 ...
- Python 基础 Dict 和 Set 类型
python 什么是dict 例如: d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } 我们把名称称为key,对应的成绩称为value,dic就是通过key 来查找 ...
- day3学python 字典+列表集合+文件读取
字典+列表集合+文件读取 字典示例 ************************ 各地食品的三级菜单************************* 1.使用字典嵌套字典 2.采用死循环思路 3 ...
- python基础知识六 文件的基本操作+菜中菜
基础知识六 文件操作 open():打开 file:文件的位置(路径) mode:操作文件模式 encoding:文件编码方式 f :文件句柄 f = open("1.t ...
- Python基础(三)——集合、有序 无序列表、函数、文件操作
1.Set集合 class set(object): """ set() -> new empty set object set(iterable) -> n ...
随机推荐
- python原始字符串
str1='let's go' File "<input>", line 1 str1='let's go' ^ SyntaxError: invalid syntax ...
- CentOS 6.*通过yum安装 MySQL-5.5
转自https://www.cnblogs.com/wsl222000/p/5445768.html 1.安装mysql-5.5的yum源 rpm -ivh http://repo.mysql.com ...
- Asp.net mvc 中Action 方法的执行(三)
[toc] 前面介绍了 Action 方法执行过程中的一些主要的组件以及方法执行过程中需要的参数的源数据的提供以及参数的绑定,那些都可以看作是 Action 方法执行前的一些必要的准备工作,接下来便将 ...
- MYSQL DISTINCT Optimization
在很多情况下,Distinct和order by的组合需要建立一个内存临时表. 因为distinct关键字可能利用group by,所以了解下mysql如何处理group by有帮助. distin ...
- LINUX文档管理命令
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- mysql主从同步(3)-percona-toolkit工具(数据一致性监测、延迟监控)使用梳理
转自:http://www.cnblogs.com/kevingrace/p/6261091.html 在mysql工作中接触最多的就是mysql replication mysql在复制方面还是会有 ...
- Maven以及在Maven在Myeclipse中的配置
一.maven安装与配置1.到官网http://maven.apache.org/download.cgi下载maven压缩包,解压到指定文件夹.如:D:\apache-maven-3.3.92.添加 ...
- Linxu指令--date,cal
在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便. 1.命令格式: date [参数 ...
- ORACLE对象大小写问题
在数据库新建一个测试表(数据库版本为ORACLE 10.2.0.1.0),表名为小写的test. 脚本如下所示: CREATE TABLE test( id NUMBER(10), ...
- python源码书籍
<Python源码剖析>一书现在很难买到,目前大部分都是电子书. 为了更好地利用Python语言,无论是使用Python语言本身,还是将Python与C/C++交互使用,深刻理解Pytho ...