zoukankan      html  css  js  c++  java
  • Python Day7

    ---恢复内容开始---

    一 字典属性方法补充

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

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

    1 clear  :清空

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

    2 Cory:拷贝

    提供了两种主要的copy方法,一种是普通的copy,另一种是deepcopy。我们称前者是浅拷贝,后者为深拷贝

      1.浅拷贝

    浅拷贝:不管多么复杂的数据结构,浅拷贝都只会copy一层

    浅拷贝

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

    ---恢复内容结束---

    一 字典属性方法补充

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

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

    1 clear  :清空

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

    2 Cory:拷贝

    提供了两种主要的copy方法,一种是普通的copy,另一种是deepcopy。我们称前者是浅拷贝,后者为深拷贝

      1.浅拷贝

    浅拷贝:不管多么复杂的数据结构,浅拷贝都只会copy一层

    浅拷贝

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

         深拷贝

    import copy
    a = [1, 2, 3, 4, ['a', 'b', 'c']]
    b = a
    c = copy.copy(a)
    d = copy.deepcopy(a)
    
    a.append(5)    #操作1
    a[4].append('hello')
    
    输出结果
    
    >>> a
    [1, 2, 0, 4, ['a', 'b', 'c', 'hello'], 5]
    >>> b
    [1, 2, 0, 4, ['a', 'b', 'c', 'hello'], 5]
    >>> c
    [1, 2, 3, 4, ['a', 'b', 'c', 'hello']]
    >>> d
    [1, 2, 3, 4, ['a', 'b', 'c']] 

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

    a=dict.fromkeys(['k1','k2','k3'],[1,2])
    print(a)
    
    
    输出代码
    
    
    {'k1': [1, 2], 'k2': [1, 2], 'k3': [1, 2]}

    4 pop  :删除

    d={
        'k1':'v1',
        'k2':'v2'
    }
    d.pop('k1')
    print(d)
    
    
    输出结果
    
    {'k2': 'v2'}

    5 popitem  : 删除整个元素

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

    二 集合以及集合的功能

     集合是一个不存在重复的值,而且还是无序的。

    1 add :添加不可能重复

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

    2 clear :清空

    # a={'fang','jie','lei','dong','tao'}
    # a.clear()      #清空
    # print(a)
    
    
    
    输出结果
    set()

    3 copy :拷贝

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

    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))    #查看差集
    
    
    输出结果
    {'tao', 'dong', 'lei', 'jie'}
    {'tao', 'dong', 'lei', 'jie'}

    5 discard :根据对象删除

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

    6 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))   #交集
    
    输出结果
    {'fang'}
    {'fang'}

    7 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))            #并集
    
    输出结果
    {'dong', 'cheng', 'tao', 'fang', 'lei', 'jie', 'rei'}
    {'dong', 'cheng', 'tao', 'fang', 'lei', 'jie', 'rei'}

    8 pop 随机删除

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

    9  remove :指定删除

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

    10 update :更新

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

    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)
    文本操作例子
    # 读取utf-8编码数据,【转换】成unicode(str)编码的数据
    # obj = open('D:美女模特空姐护士联系方式.txt',encoding='utf-8',mode='r')
    # content = obj.read()
    # obj.close()
    # print(content,type(content))

  • 相关阅读:
    laravel5.* 生成key
    Laravel 调试利器 Laravel Debugbar 扩展包安装及使用教程
    JS相关
    Git常用命令(全)
    linux添加计划任务
    30个php操作redis常用方法代码例子(转载)
    获取服务器IP和客户端IP
    PHP-redis中文文档(相关)
    常用算法排序
    软件下载(汇总)
  • 原文地址:https://www.cnblogs.com/liuduo/p/7430062.html
Copyright © 2011-2022 走看看