zoukankan      html  css  js  c++  java
  • python之数据类型3和文件操作

    一 字典属性方法补充

    key是不变的类型,字典能快速查找,基于哈希索引

    不可变类型 int  bool  str  tuple  可变类型:list  dict  set

     1 clear  :清空

    # d={
    #     'k1':'v1',
    #     'k2':'v2'
    # }
    # d.clear()
    # print(d)    #清空
    

     2 Cory:拷贝

    # d={
    #     'k1':'v1',
    #     'k2':'v2'
    # }
    # a=d.copy()
    # print(a)     #拷贝
    

     3 fromkeys:生成一个字典,类下面的一个属性方

    a=dict.fromkeys(['k1','k2','k3'],[1,2])
    print(a)
    

     4 pop  :删除

    # d={
    #     'k1':'v1',
    #     'k2':'v2'
    # }
    # d.pop('k1')
    # print(d)         #按照key删除
    

     5 popitem  : 删除整个元素

    # d={
    #     'k1':'v1',
    #     'k2':'v2'
    # }
    # d.popitem()
    # print(d)    #删除整个键值对
    

     6 setdefault:只添加不修改

    # d={
    #     'k1':'v1',
    #     'k2':'v2'
    # }
    # d.setdefault('k3','v3')
    # print(d)   #添加元素
    

     7 update :存在的话跟新,没有就会添加

    # d={
    #     'k1':'v1',
    #     'k2':'v2'
    # }
    # d.update({'k2':'v3','k3':'v2'})
    # print(d)    #添加,如果key存在,修改value值
    

    二 集合以及集合的功能

     集合内的元素是唯一的,集合内的元素必须是可hash的,也就是可变类型。集合是无序的

     1 add :添加不可能重复

    # a={'fang','jie','lei','dong','tao'}
    # a.add('qq')      #添加,如果集合里面有,就不会添加
    # print(a)
    

     2 clear :清空

    # a={'fang','jie','lei','dong','tao'}
    # a.clear()      #清空
    # print(a)
    

     3 copy :拷贝

    # a={'fang','jie','lei','dong','tao'}
    # b=a.copy()    #拷贝
    # print(b)

     4 difference :差集只存在一个集合的

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a - b)   #差集
    
    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a.difference(b))    #查看差集
    

     5 difference_update:找差集并更新

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # a.difference_update(b)
    # print(a)   #查找差集并更新
    

     6 symmetric_difference :找对称差集

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a ^ b)   #对称差集
    #
    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a.symmetric_difference(b))   #查看对称差集
    

     7 symmetric_difference_update:  着对称差集并更新

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # a.symmetric_difference_update(b)
    # print(a)        #查找对称差集并更新
    

     8 discard :根据对象删除

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # a.discard('jie')
    # print(a)      #删除
    

     9 intersection:交集

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a & b)   #交集
    
    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a.intersection(b))   #交集
    

     10 intersection_update:交集并更新

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # a.intersection_update(b)
    # print(a)      #查找并集并更新
    

     11 union  :并集

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a | b)    #并集
    #
    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a.union(b))            #并集
    

     12 isdisjoint :判断是否无交集

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # print(a.isdisjoint(b))     #判断是否无交集
    

     13 iscubset :判断是否是子集

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','jie'}
    # print(b.issubset(a))   #判断b是不是a的子集
    

     14 issuperset :判断是否是父集

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','jie'}
    # print(a.issuperset(b))    #判断a是不是b的父集
    

     15 pop 随机删除

    # a={'fang','jie','lei','dong','tao'}
    # a.pop()
    # print(a)    #随机删除
    

     16 remove :指定删除

    # a={'fang','jie','lei','dong','tao'}
    # a.remove('fang')
    # print(a)      #指定元素删除
    

     17 update :更新

    # a={'fang','jie','lei','dong','tao'}
    # b={'fang','rei','cheng'}
    # a.update()
    # print(a)    #更新
    

     18 len :长度

    # a={'fang','jie','lei','dong','tao'}
    # print(len(a))
    

    set一般的情况下,集合属性前面必须放集合,属性后面可以放任意的数据类型,集合里面的值是不可以变得。{}默认是字典,想要创建集合就是set()

    三 文件操作

     文件的常用方法右

      1,r(read):读取文件,只能读取,不能其他操作;  r+:不光是可以读取,而且还可以写入,r+是先读取再写入

      2 ,w(write):写入文件,只能写入;    w+:不过可以写入,而且还可以写入过后再去读取。

      3 ,a(append):追加内容,只能追加;  a+:追加过后还可以读取文件

    # #以bytes类型写入文件
    # a=b'xe4xbdxa0xe4xb8xaaxe5xa4xa7xe5x82xbbxe5x8fx89
    xe9x82xa3xe4xbaxbaxe5xb0xb1xe6x98xafxe4xbdxa0'
    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','wb')
    # b=f.write(a)
    # f.close()
    #
    # #以w覆盖的方式写入
    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w',encoding='utf-8')
    # b=f.write('dsdf')
    # f.close()
    
    #
    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd')
    # f.seek(0)       #seek()指定光标的位置
    # a=f.read()
    # f.close()
    # print(a)
    
    
    
    # a#追加的方式添加
    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','a',encoding='utf-8')
    # b=f.write('dsdf')
    # f.close()
    
    ##追加过后再读取
    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','a+',encoding='utf-8')
    # b=f.write('dsdf')
    # f.seek(0)
    # a=f.read()
    # f.close()
    # print(a)
    
    
    # #以bytes类型读取
    # f=open('E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt',mode='rb')
    # a=f.read()
    # f.close()
    # print(a)
    #
    # #以utf-8格式读取
    # f=open('E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt',mode='r',encoding='utf-8')
    # a=f.read()
    # f.close()
    # print(a)
    
    ##先读取在追加
    # f=open('E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt',mode='r+',encoding='utf-8')
    # a=f.read()
    # f.seek(3)
    # f.write('jie')
    # f.close()
    # print(a)
    #
    
    

     文件下的属性操作:

      1 read:读取文件

    # with open('E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','r',encoding='utf-8')as f :
    #     obj=f.read()
    # print(obj)
    

      2 write:写入文件

    #格式2 :
    # with open('E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w',encoding='utf-8')as f :
    #     f.write('yi')
    

      3 seek:调整光标的位置

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd')
    # f.seek(0)       #seek()指定光标的位置
    # a=f.read()
    # f.close()
    # print(a)
    

      4 tell:读取光标的位置

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs')
    # a=f.tell()   #查找光标的位置
    # print(a)
    

      5 writable:是否可写

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # a=f.writable()   #判断是否可写
    # print(a)
    

      6 readable:是否可读

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs')
    # f.seek(0)
    # a=f.readable()   #判断是否可读
    # f.close()
    # print(a)

      7 close:关闭文件

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs
    das')
    # f.close()      #关闭
    

      8 flush:刷到硬盘

    # f=open('E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt',mode='r+',encoding='utf-8')
    # a=f.read()
    # f.seek(3)
    # f.flush()      #flush 刷到硬盘
    # f.write('jie')
    # f.close()
    # print(a)
    

      9 fileno:文件对象

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs
    das')
    # a=f.fileno()             #文件对象
    # f.close()     
    # print(a)
    

      10 isatty :判断是否输出设备

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs')
    # f.seek(0)
    # a=f.isatty()      #判断是否是输出设备
    # f.close()
    # print(a)
    

      11 readline:读取一行内容

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs')
    # f.seek(0)
    # a=f.readline()   #只读取整行
    # f.close()
    # print(a)
    

      12 seekable:判断是否可设置指针

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs')
    # a=f.seekable()    #判断是否可设置指针
    # print(a)
    

      13 truncate : 光标后面的内容不要了,只要光标前面的内容

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs
    das')
    # f.truncate(5)       #指定光标的位置,然后再保留光标前面的内容是删除光标后面的内容
    # f.close()
    

      14 readlines:读取所有的内容,然后一块督导内存

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs')
    # f.seek(0)
    # a=f.readlines()      #全部读取,返回是列表,元素字符串
    # f.close()
    # print(a)
    

     python2 中的xreadlines就相当于python3中的for  line  in  f:

    # f=open(r'E:pycharmpycharmPyCharm Community Edition 2017.1.3day7jie.txt','w+',encoding='utf-8')
    # f.write('dsdfdfsd
    fsd
    fgs')
    # f.seek(0)
    # for line in f:
    #     print(line)
    # f.close()
    
  • 相关阅读:
    2.字符设备驱动开发
    1.Linux内核模块编程
    Linux基础知识
    数据结构小结
    3基本概念
    2在HTML中使用JavaScript
    1JavaScript简介
    20161230【作业1】静态网页制作笔记
    14非屏幕媒体
    13用户界面样式
  • 原文地址:https://www.cnblogs.com/fangjie0410/p/7425133.html
Copyright © 2011-2022 走看看