百木园-与人分享,
就是让自己快乐。

学习python第四天

列表的兄弟,只读列表——元组

元组只能 读 操作,不可删除,修改。若元组中有可变数据,比如元组中的一个元素是列表,那么这个列表中元素是可变的names[1][2],列表本身不可变names[1]   

   方法可用列表中的方法(涉及修改的不可用)

  创建元组:names = ()      #列表创建names = [ ]

  输出元组:names = [2]    #输出列表 names = [2]

 

细讲字符串:一个字符串就是一个列表。str = \"wonderful\"    。对于变量 str 可用列表操作的方法,还可对str进行切片等。也有索引。  但是  不可对字符串进行更改等操作。

字符串常用方法:首字母大写capitalize(变量名)

        字符串全变小写:caseflod(n)

        .center( number, 字符) 这个说不明白,看看手册吧

        count()和列表一样,统计字符串中的指定字符的个数,也可对指定范围内的字符串进行统计指定字符。(原理就是先是列表的切片)count(\"s\", 2, 4)  统计索引2-4之间的 s 的个数

        endswitch(”字符串“)判断以什么字符串为结尾

        find(\" \", [ ])  查找某个字符的位置,返回索引。找不到的话返回-1

        format() 字符串格式化。代替了% 。  具体看手册吧,一两句话说不明白。

        index()

        join()

        replace()

等等一大堆方法我就不写了。有需要去手册上看吧

 

字典:dict

  特性

    1. ley-value结构

    2. key必须为不可变类型,必须唯一

    3. value可存放多个,可修改,可以不唯一

    4. 没有顺序

    5. 查询速度快。不受字典大小的影响

  字典的创建: 1. n = { key: value}       

         2. n = dict ( key: value)

         3. n = dict ( {name: value } )

         4. 批量生成字典  key = [1,2,3,4,5]         { }.formkeys(key,100)     结果为: {1: 100, 2: 100, 3: 100, 4: 100, 5: 100}

  字典的增加:1. 直接赋值   n[\"names\"] = \"jack\"      若字典中已有新增的key,则直接赋值相当于修改value

        2. setdefalut(key, value)  成功的话返回新增的value,若字典中已有新增的key,则返回原key的value,不进行新增操作 

  字典的删除:1.del      del是通用的删除。del  names       del  names[\"key\"] 

        2.pop()    删除指定的key    names.pop(\"age\")

        3. popitem( )   随即删除一个key

        4. clear     清空     names.clear()

`  字典的修改:1. 直接赋值

        2. dict.update( dict2)       将dict2中的键值对添加到dict中    若两个字典中有重复的key,则dict2覆盖dict

  字典的查操作:1. get( key, deflut = None)    查找指定的key对应的值,若没有这个key,则返回deflut中默认的值

         2. key in dict     布尔判断  

         3.keys()  返回一个包含所有的key的列表     dict.keys()

         4. values()   返回一个包含所有value的列表    dict.values()

         5. items()  返回一个包含所有键值元组的列表   dict.item()

  字典的输出:  循环输出。for i in dict:

              print( i ) 只输出keys。不输出value

          for i in dict:

            print( i, dict[i])   输出keys和value

 

集合: set

  特点

    1. 元素不可变(元素不能是列表或者字典这种)

    2,. 天生去重,没法存储重复的元素

    3. 无序

  集合帮列表去重:  set(list)#将列表转成set

  集合的增:set.add( )   只能增加不可变的数据

  集合的删:set.discard( )  删除一个存在的值,不存在也不报错

       set.pop() 随机删

       set.remove( )  删除一个值,没有的话报错

  集合不能改

集合的关系运算。交、并、差、对称差集

  交集:set1 & set2    输出两个集合相交的值并以集合形式输出

  并集(合集): set1 | set2    两集合合并 ,并且去重

  差集:set1 - set2    去掉set1中的两集合相同的元素,剩下不同的元素

  对称差集:set1 ^ set2      去掉两集合中相同的元素并合并

集合之间的关系。相交,包含,不相交

  print(set1.isdisjoint(set2))  判断两集合是不是相交

  print( set1.issubset(set2)) 判断set1是不是set2 的子集

  print( set1.issuperset(set2)) 判断set1是不是set2 的父级

常用方法:

  set1.difference()    取出set1中不同于()中的值  相当于差集

  set1.intersection()  取出set1和()中的交集

  set1.symmetric_difference()     对称差集

  set1.union()   合集

  set1.difference_update()   踢出set1中脚踩两只船的,剩余元素重新赋值给set1

  set1.intersection_update( )  取出交集,并将交集的值付给set1

 

前天开始断了,当天学不下去了,昨天白天学了点,下午当了几个小时的助教耽误了学习,晚上又犯困了,效率低下我就直接睡了。希望我也希望一同自学的朋友可以克服独自学习的各种困难,坚持下去。加油吧!

 

        

来源:https://www.cnblogs.com/xiaoyuheng/p/14554669.html
图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » 学习python第四天

相关推荐

  • 暂无文章