day3 python 集合 文件
字典是无序的,列表是有序的
a='zhangsan'
print (a[1])
a[2]=222 #字符串不能赋值
集合(set):把不同的元素组成一起形成集合
info=[1,2,34,5,6,7]
info=set(info)
print(info)
或
info=[1,2,34,5,6,7]
se=set(info)
print(se)
交集(&)
与集合AND等价,交集符号的等价方法是intersection
#交集intersection
info=[1,2,34,5,6,7]
info=set(info)
info1=set([2,4,5,66,77,88])
print(info1.intersection(info)) #取与info1的交集
print(info&info1) #取交集,等价方法是intersection
print(info1.union(info)) #并集union
print(info|info1)#等价并集union
print(info1.difference(info))#取info1的不同于info的值,查补(-)等价方法是difference()
print(info.difference(info1))#取info的不同于info1的值,查补(-)等价方法是difference()
print(info-info1) #等价方法是difference()
info3=set([2,5])
print(info3.issubset(info1)) #info3是info1的子集
print(info1.issuperset(info3))#info1是info3的父集
print(info)
print(info1)
#对称差集
print (info.symmetric_difference(info1))#交集去掉,互相都没有的留下
print(info^info1) #对称差集 等价方法是symmetric_difference
#简单的去重方式
list=[21,3,4,1,4,3,5]
data=set(list)
print (data)
文件的操作
# r只读,w可写,a追加
#我在E盘新建一个空白名为dang的文本文件,然后进行相关操作,
# 在程序的相对路径下找到了这个文件,打开该文件后,发现'nihao'已经写入进去了
f=open('../dang.txt','w')
f.write('nihao')
f.close()
#读文件里的内容
p=open('yesterdate.txt','r')
data=p.read()
print (data)
for i in p.readlines(5): #读前5行
print(i)
#读文件的前几个字符
p=open('yesterdate.txt','r')
data=p.read(5)#读取文件的前几个字符
print (data)
# tell 方法确认了已经移到当前文件位置
# 一个文件对象维护它所打开文件的状态。文件对象的 tell 方法告诉你在打开文件中的当前位置。
# 因为我们还没有对这个文件做任何事,当前位置为 0,它是文件的开始处。
p=open('../dang.txt','r')
print (p.readlines())
print (p.tell()) #计数器-计数
p.seek(10) #光标移动,从第10个位置开始读取
print(p.readlines())
p.close()
#当with代码块执行完毕时,内部会自动关闭并释放文件资源,
#不用写关闭f.close()
with open('../dang.txt','r') as f:
print (f.readlines())
print (f.tell())
print(f.seek(4))
print (f.readlines())
with open('../dang.txt','r') as f:
for line in f:
print (line)
#seek():
#文件对象的 seek 方法在打开文件中移动到另一个位置。第二个参数指出第一个参数是什么意思:
# 0 表示移动到一个绝对位置 (从文件开始算起),
# 1 表示移到一个相对位置 (从当前位置算起),
# 还有 2 表示文件末尾
#进度条
#sys.stdout.write也可以换成print ,sys.stdout.write是标准输入输出
#flush()方法刷新内部缓冲区,像标准输入输出的fflush。这类似文件的对象,无操作。
import sys ,time
for i in range(20):
sys.stdout.write('#') # sys.stdout 指向控制台,有缓存
sys.stdout.flush()
time.sleep(0.1)
#局部变量
name='alex'
def change_name(name):
print ('before_name:',name)
name='zhangsan'
print('change_name:',name)
change_name(name)
print ('before name:', name)
day3 python 集合 文件的更多相关文章
- day3学python 字典+列表集合+文件读取
字典+列表集合+文件读取 字典示例 ************************ 各地食品的三级菜单************************* 1.使用字典嵌套字典 2.采用死循环思路 3 ...
- Python基础--文件操作和集合
这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件file.txt: 我们哭了 ...
- 从用python自动生成.h的头文件集合和类声明集合到用python读写文件
最近在用python自动生成c++的类.因为这些类会根据需求不同产生不同的类,所以需要用python自动生成.由于会产生大量的类,而且这些类是变化的.所以如果是在某个.h中要用include来加载这些 ...
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
- Day3 - Python基础3 函数、递归、内置函数
Python之路,Day3 - Python基础3 本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8. ...
- Python工程文件中的名词解释---Module与Package的区别
当我们在已有的Python工程文件中创建新的内容是,通常会有两种类型文件供你选择---Module和Package,对于初学者来说会搞不清楚这两种文件直接的关系.这里就来解释一下这两者之间的关系. M ...
- Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...
- 【转】Python之文件与目录操作(os、zipfile、tarfile、shutil)
[转]Python之文件与目录操作(os.zipfile.tarfile.shutil) Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读 ...
- Python之文件与目录操作(os、zipfile、tarfile、shutil)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...
随机推荐
- js markdown chart flow
http://knsv.github.io/mermaid/#example-of-a-marked-renderer
- linux bash history
vim /etc/profile export HISTSIZE=10000 export HISTTIMEFORMAT="`whoami` : %F %T : " export ...
- android studio ,Gradle DSL method not found: 'compile()'
用gradle构建android工程出现 Gradle DSL method not found: 'compile()' 错误 检查你外层的build.gradle文件中是不是用了compile方 ...
- 初始化 Gradle 工程目录(转自: 隔叶黄莺 Unmi Blog)
最近重新在 Eclipse 中打开旧的 Maven 项目,总有些什么错误,备受折磨.期间试手了 Ant+Ivy, 现今试用了下 Gradle,感觉不错,它应该才是我真想要的,Maven 差不多该扔到一 ...
- Java日志管理方法(转载)
原文地址:http://www.cnblogs.com/leocook/p/log_java.html java开发中常见的几种日志管理方案有以下4种: 1. Commons-logging + lo ...
- 转:python webdriver API 之alert/confirm/prompt 处理
webdriver 中处理 JavaScript 所生成的 alert.confirm 以及 prompt 是很简单的.具体思路是使用switch_to.alert()方法定位到 alert/conf ...
- [原创]安装Oracle 11gR2,以及如何在win8下使用plsql develper连接Oracle数据库 ,在这里和大家分享下
一,关于win8下安装Oracle 11gR2 1.我下载的是Oracle_11gR2_win64.其中有两个包: 注意:在解压了之后将:win64_11gR2_database_2of2\datab ...
- 查看真机的系统中sdk的版本
1.adb devices 确保连接上了真机 2.adb shell 进入android系统 3.进入system目录下 4.查看build.prop文件 cat build.prop
- JSon_零基础_005_将po(bean)对象集合List转换为JSon格式的对象字符串,返回给界面
将po(bean)对象集合List转换为JSon格式的对象字符串,返回给界面 导入jar包: 编写:po(bean)代码: package com.west.webcourse.po; /** * 第 ...
- DFT basics
DFT测试中,最重要的部分还是sequential circuit的内部状态的测试. 起初ad hoc的方法用来提高testability,可以提高局部的coverage,但并不是一个系统性的方法. ...