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

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. pyOpenSSL0.13安装失败

    /usr/lib64/python2.4/distutils/dist.py:236: UserWarning: Unknown distribution option: 'zip_safe' war ...

  2. 数据库调优过程(一):SqlServer批量复制(bcp)[C#SqlBulkCopy]性能极低问题

    背景 最近一段给xx做项目,这边最头疼的事情就是数据库入库瓶颈问题. 环境 服务器环境:虚拟机,分配32CPU,磁盘1.4T,4T,5T,6T几台服务器不等同(转速都是7200r),内存64G. 排查 ...

  3. UIBarButtonItem变弹簧

    UIBarButtonItem * spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystem ...

  4. Swift实战-QQ在线音乐(AppleWatch版)

    1.打开项目QQMusic,然后点菜单:“File-New-Target”添加appleWatch扩展项 2.选择Swift语言,把Include Notification Scene前的勾去掉 (项 ...

  5. 入门训练 A+B问题

    http://lx.lanqiao.org/problemset.page?code=BEGIN-&userid=34549   入门训练 A+B问题   时间限制:1.0s   内存限制:2 ...

  6. [转] 多线程 《深入浅出 Java Concurrency》目录

    http://ifeve.com/java-concurrency-thread-directory/ synchronized使用的内置锁和ReentrantLock这种显式锁在java6以后性能没 ...

  7. 封装application类

    <?php  //判断用户是否是通过入口文件访问   if(!defined('ACCESS')){     echo '非法请求';     die;   }   //封装初始化类   cla ...

  8. PHP V5.2 中的新增功能,第 1 部分: 使用新的内存管理器

    PHP V5.2:开始 2006 年 11 月发布了 PHP V5.2,它包括许多新增功能和错误修正.它废止了 5.1 版并被推荐给所有 PHP V5 用户进行升级.我最喜欢的实验室环境 —— Win ...

  9. mesos资源动态分配测试

    测试集群配置 60CPU,320G RAM 测试内容:先运行一个需要60CPU的Application1,再运行一个需要50CPU的Application2. 结果分析 如果要等Application ...

  10. BJFU 1009

    描述 现在社会上的抽奖活动简直是太多了.前段时间中国联通就举办了一个很无聊的抽奖活动,规则是每人可以向中国联通的短信系统发送一个实数,系统每天会从这些数字中选择一个无重复(就是有且只有一个)且最小的数 ...