python小白入门4——列表元组

Posted huihuangyan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python小白入门4——列表元组相关的知识,希望对你有一定的参考价值。

一:列表

#索引

技术图片
1 li = [alex,[1,2,3],wusir,egon,女神,taibai]
2 l1 = li[0]
3 print(l1)
4 l2 = li[1]
5 print(l2)
6 l3 = li[0:3]
7 print(l3)
View Code

#增加 append insert

技术图片
 1 li.append(日天)
 2 li.append(1)
 3 print(li)
 4 while 1:
 5     username = input(>>>)
 6     if username.strip().upper() == Q:
 7         break
 8     else:
 9         li.append(username)
10 print(li)
11 li.insert(4,春哥)
12 print(li)
13 li.extend(二哥)
14 li.extend([1,2,3])
15 print(li)
View Code

#删

技术图片
 1 li = [taibai,alex,wusir,egon,女神,]
 2 name = li.pop(1)  # 返回值
 3 name = li.pop()  # 默认删除最后一个
 4 print(name,li)
 5 
 6 li.remove(taibai)  # 按元素去删除
 7 print(li)
 8 
 9 li.clear()  # 清空
10 print(li)
11 
12 del li
13 del li[0:2]  # 切片去删除
14 print(li)
View Code

#改

技术图片
1 li[0] = 男兽
2 li[0] = [1,2,3]
3 li[0:3] = 云姐plfdslkmgdfjglk
4 li[0:3] = [1,2,3,春哥,咸鱼哥]
5 print(li)
View Code

#查

技术图片
1 for i in li:
2     print(i)
3 print(li[0:2])
View Code

#公共方法:

技术图片
 1 l = len(li)
 2 print(l)
 3 num = li.count(taibai)
 4 print(num)
 5 print(li.index(wusir))
 6 li = [1,5,4,7,6,2,3]
 7 
 8 li.sort()      #正向排序
 9 print(li)
10 
11 li.sort(reverse=True)     #反向排序
12 print(li)
13 
14 li.reverse()      #反转    
15 print(li)
View Code

列表转化成字符串  list -----> str    join

技术图片
1 li = [taibai,alex,wusir,egon,女神,]
2 s = ++++.join(li)
View Code

 

二:元组

#元祖 只读列表,可循环查询,可切片。
#儿子不能改,孙子可能可以改。

技术图片
 1 tu = (1,2,3,alex,[2,3,4,taibai],egon)
 2   print(tu[3])
 3   print(tu[0:4])
 4   for i in tu:
 5       print(i)
 6 tu[4][3]=tu[4][3].upper()
 7 print(tu)
 8 tu[4].append(sb)
 9 print(tu)
10 s = alex
11 s1 = sb.join(s)
12 print(s1)
View Code

 

 

 

 

三:字典

数据类型划分:可变数据类型,不可变数据类型
不可变数据类型:元组,bool int str       可哈希
可变数据类型:list,dict set             不可哈希
dict key 必须是不可变数据类型,可哈希,
    value:任意数据类型。
dict 优点:二分查找去查询
         存储大量的关系型数据
      特点:无序的

技术图片
 1 dic = {
 2     name:[大猛,小孟],
 3     py9:[{num:71,avg_age:18,},
 4            {num: 71, avg_age: 18, },
 5            {num: 71, avg_age: 18, },
 6            ],
 7     True:1,
 8     (1,2,3):wuyiyi,
 9     2:二哥,
10 }
11 print(dic)
View Code

#增:

技术图片
1 dic1 = {age: 18, name: jin, sex: male,}
2 dic1[high] = 185  #没有键值对,添加
3 dic1[age] = 16  #如果有键,则值覆盖
4 
5 dic1.setdefault(weight)  # 有键值对,不做任何改变,没有才添加。
6 dic1.setdefault(weight,150)
7 dic1.setdefault(name,二哥)
8 print(dic1)
View Code

#删

技术图片
 1 print(dic1.pop(age))   # 有返回值,按键去删除
 2 print(dic1.pop(二哥,None))   # 可设置返回值
 3 print(dic1)
 4 
 5 print(dic1.popitem())  # 随机删除 有返回值 元组里面是删除的键值。
 6 print(dic1)
 7 
 8 del dic1[name1]
 9 print(dic1)
10 del dic1
11 print(dic1)
12 
13 dic1.clear() #清空字典
View Code

#改  update

技术图片
1 dic1[age] = 16
2 
3 dic = {"name":"jin","age":18,"sex":"male"}
4 dic2 = {"name":"alex","weight":75}
5 dic2.update(dic)  #
6 
7 print(dic)
8 print(dic2)
View Code

#查

技术图片
 1 print(dic1.keys(),type(dic1.keys()))
 2 print(dic1.values())
 3 print(dic1.items())
 4 
 5 for i in dic1:
 6     print(i)
 7 for i in dic1.keys():
 8     print(i)
 9 
10 for i in dic1.values():
11     print(i)
12 
13 a,b = 1,2
14 print(a,b)
15 
16 a = 1
17 b = 2
18 a,b = b,a
19 print(a,b)
20 a,b = [1,2],[2,3]
21 a,b = (1,2)
22 print(a,b)
23 
24 for k,v in dic1.items():
25     print(k,v)
26 
27 v1 = dic1[name]
28 print(v1)
29 
30 v2 = dic1[name1]  # 报错
31 print(v2)
32 
33 print(dic1.get(name1,没有这个键))
View Code

#字典嵌套

技术图片
 1 dic = {
 2     name:[alex,wusir,taibai],
 3     py9:{
 4         time:1213,
 5         learn_money:19800,
 6         addr:CBD,
 7            },
 8     age:21
 9 }
10 dic[age] = 56
11 print(dic[name])
12 dic[name].append(ritian)
13 l = [1,2,wusir]
14 l[2] = l[2].upper()
15 dic[name][1] = dic[name][1].upper()
16 print(dic)
17 dic[py9][female] = 6
18 print(dic)
19 
20 
21 info = input(>>>).strip()
22 for i in info:
23     if i.isalpha():
24         info = info.replace(i," ")
25 l = info.split()
26 print(len(l))
View Code

 四:集合

集合:可变的数据类型,他里面的元素必须是不可变的数据类型,无序,不重复。

技术图片
1 set1 = set({1,2,3})
2 set2 = {1,2,3,[2,3],{name:alex}}  # 错的
3 print(set1)
4 print(set2)
5 set1 = {alex,wusir,ritian,egon,barry,}
View Code

#增

技术图片
1 #add
2   set1.add(女神)
3   print(set1)
4 #update
5   set1.update(abc)
6   print(set1)
View Code

#删除

技术图片
 1 set1.pop()  # 随机删除
 2 print(set1.pop())  # 有返回值
 3 print(set1)
 4 
 5 set1.remove(alex)  # 按元素
 6 print(set1)
 7 
 8 } set()
 9 set1.clear()
10 print(set1)  # set()
11 
12 del set1
13 print(set1)
View Code

#查

技术图片
 1 for i in set1:
 2     print(i)
 3 
 4 set1 = {1,2,3,4,5}
 5 set2 = {4,5,6,7,8}
 6 set3 = set1 & set2
 7 print(set3)  # {4, 5}
 8 print(set1.intersection(set2))  # {4, 5}
 9 
10 set1 = {1,2,3,4,5}
11 set2 = {4,5,6,7,8}
12 print(set1 | set2)  # {1, 2, 3, 4, 5, 6, 7,8}
13 print(set2.union(set1))  # {1, 2, 3, 4, 5, 6, 7}
14 
15 set1 = {1,2,3,4,5}
16 set2 = {4,5,6,7,8}
17 print(set1 ^ set2)  # {1, 2, 3, 6, 7, 8}
18 print(set1.symmetric_difference(set2))  # {1, 2, 3, 6, 7, 8}
19 
20 set1 = {1,2,3,4,5}
21 set2 = {4,5,6,7,8}
22 print(set1 - set2)  # {1, 2, 3}
23 #set1独有的
24 print(set1.difference(set2))  # {1, 2, 3}
25 
26 set1 = {1,2,3,}
27 set2 = {1,2,3,4,5,6}
28 
29 print(set1 < set2)
30 print(set1.issubset(set2))  # 这两个相同,都是说明set1是set2子集。
31 
32 print(set2 > set1)
33 print(set2.issuperset(set1))  # 这两个相同,都是说明set2是set1超集。
View Code

#去重

技术图片
 1 li = [1,2,33,33,2,1,4,5,6,6]
 2 set1 = set(li)
 3 # print(set1)
 4 li = list(set1)
 5 print(li)
 6 s1 = {1,2,3}
 7 print(s1,type(s1))
 8 
 9 s = frozenset(barry)
10 print(s,type(s))
11 for i in s:
12     print(i)
View Code

 

以上是关于python小白入门4——列表元组的主要内容,如果未能解决你的问题,请参考以下文章

Python自学入门学习基础之一: 列表和元组

python 从小白开始 - 列表元组操作

Datawhale powerful-numpy《从小白到入门》学习笔记

Python 基础入门笔记———— 字符串列表元组集合字典

Python趣味入门8:集合变量-列表集合元组字典

python基础之--元组(tuple),python小白必看!