乐愚社区Beta

 编程语言  >  0基础学python(四)

0基础学python(四)

P2P  L3  • 2020-10-20 • 回复 0 • 只看楼主举报    

列表[]

   列表是⼀种有序的集合,可以随时添加、查找和删除元素。

          列表⽀持加⼊不同数据类型的元素:数字、字符串、列表、元组等。

列表可以是不含元素的空列表,也可以包含超级多的元素(在内存⼤⼩⽀持的情况下)

list_a = [ ]# 空列表,即里面啥也没放
 list_b = [2018, 10, '2018-10-1', ['hi', 1, 2], (33, 44)]
3# list_b ⻓度为5,包含2个数字元素、1个字符串元素、1个列表元素和1个元组元素

 list_b[0] == list_b[-5] == 2018
 lits_b[3] == list_b[-2] == ['hi', 1, 2]
 lits_b[4] == list_b[-1] == (33, 44)

    因为列表里面可以放多个数据所以我们需要找到它们的位置,并进行使用,所以有下标,也就是标记每个数据的位置从左往右的话第一个数据的位置计做0,因此list_b[0]的结果就是2018,反之从右往左就是从-1开始。

     切片(以一定方式取出列表的元素)[start,end,step]即起始位置,终止位置,步长(几个几个找)。

     列表里面的内容是可以进行修改的,包括增删改

      ⽤append()⽅法,在列表尾部添加单个新元素。

    ⽤insert()⽅法,在列表中指定位置添加元素。

   

list_a = [ ]
list_a.append('happy') # list_a 为['happy']
list_a.insert(0, 'very') # list_a为['very', 'happy']

# 两种扩充列表⽅式
list_1 = ['I', 'am']
list_2 = ['very', 'happy']
list_3 = list_1 + list_2 # 新列表 list_3 为['I', 'am', 'very',
'happy']
list_1.extend(list_2) # 原列表1扩充,list_1为['I', 'am', 'very',
'happy']

⽤ “+” 运算符,将两个列表拼接出⼀个新列表。

⽤extend()⽅法,在⼀个列表后⾯拼接进另⼀个列表

     ⽤del list[m] 语句,删除指定元素m

⽤remove()⽅法,删除指定值的元素(第⼀个匹配项)。

⽤pop()⽅法,取出并删除列表末尾的元素

⽤pop(m)⽅法,取出并删除m。

⽤clear(),清空列表的元素。(列表还在,但是里面啥也没有)

⽤del list ,删除整个列表

   len(),统计全部元素的个数。

   count(),统计指定值的元素的个数。

   max(),统计元素中的最⼤值(要求元素类型相同;数字类型直接⽐较,其它类型⽐较id)

   min(),统计元素中的最⼩值(要求元素类型相同;数字类型直接⽐较,其它类型⽐较id)

   index(),查找指定值的元素的索引位置(第⼀个匹配项)。

    reverse(),翻转列表中的元素。

    copy(),浅拷⻉并⽣成新的列表。

    deepcopy(),深拷⻉并⽣成新的列表。

     sort(),在原列表基础上进⾏排序。

      sorted()⽅法,将新列表基础上对原列表的元素进⾏排序

       

       元组()

         与列表大致一样只是不支持直接修改,用小括号括起来的

        字典 {}

         列表和元组虽然能储存多个元素,但是一旦数据多起来就很杂乱,时间长了你很难记清第几个数据是干啥用的这时候就用到字典了

        例如一个人有身高体重年龄等等数据

student_1  ={name:'小王',age:18,height:180}

  上学的时候大家应该都学过映射,就是一个东西对应着另外一样东西,字典同样如此以上面的年龄为例,age就是key(大家可以理解为一种关键字),18就是value(关键字对应的数据)

     元组可以作为 dict 的 key,但列表不能作为元组的 key。这是由于 dict 要求 key 必须是不可变类型,但列表是可变的,因此列表不能作为字典的 key

     items()、keys()、values() 分别用于获取字典中的所有 key-value 对、所有 key、所有 value。

      字典可以依靠key去找value

a={age:18}
print(a[age])

       clear() 用于清空字典中所有的 key-value 对,对一个字典执行 clear() 方法之后,该字典就会变成一个空字典

        get() 方法其实就是根据 key 来获取 value,它相当于方括号语法的增强版,当使用方括号语法访问并不存在的 key 时,字典会引发 KeyError 错误;但如果使用 get() 方法访问不存在的 key,该方法会简单地返回 None,不会导致错误

        setdefault() 根据 key 来获取对应 value 的值。但有一个额外的功能,即当程序要获取的 key 在字典中不存在时,该方法会先为这个不存在的 key 设置一个默认的 value,然后再返回该 key 对应的 value

    

      就讲这些吧,大家多去尝试,每个都举例太麻烦了??,下节课讲一下while和for然后就优化一下猜数游戏


还没注册帐号?快来注册社区帐号,和我们一起嗨起来!
关于本社区

集各类兴趣爱好于一身的轻量化交流社区,在此您可以和他人一起分享交流您觉得有价值的内容,社区鼓励大家发表原创内容,为社区添砖加瓦!

发帖奖励 → 社区版规 → 招聘版主 →
推荐版块
扫描二维码下载社区APP
回到顶部