• 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)
  • 相关阅读:
    vim 常用命令
    centos 安装mysql
    centos部署ftp
    centos 6.8部署nginx
    ndk学习16: unix domain socket
    ndk学习14: 进程
    ndk学习13: proc
    ndk学习11: linux内存管理
    ndk学习10: linux文件系统
    ndk学习9: 动态使用共享库
  • 原文地址:https://www.cnblogs.com/xuehuahongmei/p/5762195.html
Copyright © 2020-2023  润新知