字典是无序的,列表是有序的

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 集合 文件的更多相关文章

  1. day3学python 字典+列表集合+文件读取

    字典+列表集合+文件读取 字典示例 ************************ 各地食品的三级菜单************************* 1.使用字典嵌套字典 2.采用死循环思路 3 ...

  2. Python基础--文件操作和集合

    这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件file.txt: 我们哭了 ...

  3. 从用python自动生成.h的头文件集合和类声明集合到用python读写文件

    最近在用python自动生成c++的类.因为这些类会根据需求不同产生不同的类,所以需要用python自动生成.由于会产生大量的类,而且这些类是变化的.所以如果是在某个.h中要用include来加载这些 ...

  4. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  5. Day3 - Python基础3 函数、递归、内置函数

    Python之路,Day3 - Python基础3   本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8. ...

  6. Python工程文件中的名词解释---Module与Package的区别

    当我们在已有的Python工程文件中创建新的内容是,通常会有两种类型文件供你选择---Module和Package,对于初学者来说会搞不清楚这两种文件直接的关系.这里就来解释一下这两者之间的关系. M ...

  7. Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)

    Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...

  8. 【转】Python之文件与目录操作(os、zipfile、tarfile、shutil)

    [转]Python之文件与目录操作(os.zipfile.tarfile.shutil) Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读 ...

  9. Python之文件与目录操作(os、zipfile、tarfile、shutil)

    Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...

随机推荐

  1. CSS For Bar Graphs(maybe old)

    Having a working knowledge of XHTML and CSS when developing applications is a big help in knowing wh ...

  2. gcc 错误:Fatal error error writing to tmp No space left on device

    在使用gcc make时报错:Fatal error error writing to tmp No space left on device finiteVolume/ddtSchemes/Eule ...

  3. tableview的cell点击和取消

    #pragma mark - 选择cell: - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPa ...

  4. NABCD模式

    各位用户:       我们的“昵妆”是为了帮助不会化妆的用户解决困难, 他们需要有适合他们的优质的化妆品和 正确的视频或者化妆师来指导他们,但是现有的方案并没有很好地解决这些需求,我们有独特的办法, ...

  5. oracle触发器书写方法

    CREATE SEQUENCE 序列名[INCREMENT BY n] --每次加几[START WITH n] --序列从几开始[{MAXVALUE/ MINVALUE n|NOMAXVALUE}] ...

  6. SQL面向对象抽象类

    抽象类:抽象类,只为继承而出现,不定义具体的内容,只规定该有哪些东西:一般抽象类中只放置抽象方法,只规定了返回类型和参数:例: 人 - 有吃饭,睡觉方法: 男人 - 继承人抽象类,必须实现吃饭,睡觉的 ...

  7. linux kernel.shmall shemax shemin 參數解釋

    分类: oracle linux 2010-06-17 14:30 6193人阅读 评论(0) 收藏 举报 linuxoracleredhat数据库服务器x86 Linux X86-64操作系统,Or ...

  8. CORBA的简单介绍及HelloWorld(zhuan)

    http://blog.csdn.net/drykilllogic/article/details/25971915

  9. 什么是XML

    什么是 XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 标签没 ...

  10. PAT乙级 1030. 完美数列(25)

    1030. 完美数列(25) 时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CAO, Peng 给定一个正整数数列,和正整数p,设这 ...