Python3 列表,元组,字典,字符串知识小结

一、知识概要

  1. 列表,元组,字典,字符串的创建方式

  2. 列表,元组,字典,字符串的方法调用

  3. 列表,元组,字典,字符串的常规用法

 

二、列表

 1 # 列 表
 2 
 3 # 列表基础
 4 list_1 = ['a','b','c','d','e','f']
 5 list_2 = ['apple','banana','watermelon','strawberry','banana','apple']
 6 print(list_1)
 7 print("##########")
 8 # 列表得下标是从0开始的,之后的一次+1
 9 print(list_1[0])
10 print("##########")
11 print(list_1[4])
12 print("##########")
13 print(list_1[1:3])  # 从下标为1的元素开始,到下标为3的终止
14 print("##########")
15 print(list_1[1:-2])     # -2是指将列表的顺序倒置,结尾变为开头,下标相对来说变为0向前依次 -1
16 print("##########")
17 print(list_1[::2])  # 前面两个冒号分别使用默认的参数,最后一个数字表示步长,两步一取
18 print("##########")
19 
20 # 列表的增、删、改
21 list_1.append('z')  # 在结尾加一个元素
22 print(list_1)
23 print("##########")
24 list_1.insert(1,'y')    # 在指定位置增加元素,在a后b前插入y
25 print(list_1)
26 print("##########")
27 a = list_2.extend(list_1)       # 将list_1和list_2合并
28 print(a)
29 print("##########")
30 list_1[4] = 'o'     # 修改第五个元素
31 print(list_1)
32 print("##########")
33 list_1[2:3] = ['p','q']     # 修改连续的元素
34 print(list_1)
35 print("##########")
36 list_1.remove(list_1[3])        # 删除下标为3的元素
37 print(list_1)
38 print("##########")
39 list_1.pop(2)       # 直接加下标
40 print(list_1)
41 print("##########")
42 # del list_1[2]   删除列表中的下标为2的元素
43 # del list_1      直接删除掉列表
44 
45 # 列表的一些方法
46 # count
47 print(list_2.count('apple'))    # count是计算出现次数的方法
48 print("##########")
49 
50 # index
51 print(list_2.index('banana'))       # 寻找banana在哪个位置
52 print("##########")
53 one_apple = list_2.index('apple')
54 print(one_apple)
55 list_3 = list_2[one_apple+1:]
56 two_apple = list_3.index('apple')
57 list_4_index = one_apple + two_apple +1
58 print(list_4_index)         # 输出第二个位置
59 print("##########")
60 
61 # reverse
62 list_1.reverse()    # 倒叙
63 print(list_1)
64 print("##########")
65 
66 # sort
67 list_5 = [6,4,3,7,5,5,8,1]
68 list_5.sort()       # 排序(从小到大)
69 print(list_5)
70 print("##########")
71 
72 # clear
73 list_5.clear()      # 清空列表
74 print(list_5)
75 print("##########")

 

三、元组

1 # 元 组
2 
3 tuple1 = (1,)       # 只有一个元素的话,后面加一个逗号,对之后的学习有所帮助
4 tuple2 = (1,2,3,4,5)
5 # tuple2[2] = 10    # 元组是不可修改的

 

四、字典

 1 # 字 典
 2 
 3 dictionary1 = {'country':'China','city':'beijing'}    # 创建字典(常用),前面为键,后面为键值
 4 dictionary2 = dict((('city','shanghai'),))      # 创建字典
 5 # 键是不可变类型:整型,字符串,元组
 6 # 可变类型有:列表,字典
 7 print(dictionary1)
 8 print(dictionary1['city'])
 9 print(dictionary2)
10 # 字典两大特点:无序,键值唯一
11 print("##########")
12 
13 
14 dictionary2['city'] = 'tianjin'     # 修改字典,增加内容
15 print(dictionary2)
16 print("##########")
17 return1 = dictionary2.setdefault('location','north')      # 增加内容,如果有则不做修改
18 print(dictionary2)
19 print(return1)      # 返回键值
20 print("##########")
21 print(dictionary1.keys())       # 查看字典当中用那些键
22 print(list(dictionary1.keys()))     # 用列表的形式展示
23 print(dictionary1.values())     # 只查看键值
24 print(dictionary1.items())      # 将字典当中的所有键值对拿出
25 print("##########")
26 
27 dictionary3 = {1:1,2:2}
28 dictionary4 = {1:3,4:5,6:7}
29 dictionary3.update(dictionary4)     # 更新字典,如果有键相同,则更新键值;如完全没有,则更新在后方
30 print(dictionary3)
31 print(dictionary4)
32 print("##########")
33 
34 # 删除字典
35 eg = dictionary3.popitem()      # 不加键,则会随机删除键值对
36 print(eg,'||',dictionary3)
37 dictionary4.pop(6)      # 删除键为6的信息
38 print(dictionary4)
39 del dictionary4[4]      # 删除键为4的信息
40 print(dictionary4)
41 dictionary4.clear()     # 清空字典,只留下框架轮廓
42 print(dictionary4)
43 print("##########")
44 
45 dictionary5 = dict.fromkeys(['a','b','c'],['z','y'])      # 分配率,将后面最为一个整体
46 print(dictionary5)
47 
48 dictionary5['b'][0] = 'x'   # 需要理解深浅拷贝
49 print(dictionary5)
50 print("##########")
51 print(sorted(dictionary5))      # 字典的排序
52 print(sorted(dictionary5.values()))     # 根据值排序
53 print("##########")
54 
55 # 字典的遍历
56 dictionary6 = {'num1':10,'num2':52,'num3':33}
57 # 效率较高
58 for i in dictionary6:
59     print(i,dictionary6[i])
60 print("##########")
61 # 效率很低
62 for a,b in dictionary6.items():
63     print(a,b)
64 print("##########")

 

五、字符串

 1 # 字符串
 2 str1 = '1'
 3 str2 = "2"      # Python中单引号与双引号没什么区别
 4 print(str1)
 5 print(str2)
 6 print(str2*200)
 7 str3 = 'asdqwezxc'
 8 print(str3[2:])
 9 print('as' in str3)     # 判断此字段是否在字符串之中
10 print('aq' in str3)
11 print(str1+str2)        # 字符串拼接(效率很低)
12 eg1 = '......'.join([str1,str2])    # 通过单引号的符号连接将要拼接的两个字符串
13 print(eg1)
14 print("##########")
15 
16 
17 # 字符串内置方法
18 str4 = 'it is a bea\tutiful city 是 {name}\n'
19 print(str4.count('s'))      # 统计数目
20 print(str4.capitalize())        # 字符串首字母大写
21 print(str4.center(100,'-'))    # 居中(距离和符号)
22 print(str4.endswith('ful'))     # 以某个内容结尾
23 print(str4.startswith('it'))    # 以某个内容开始
24 print(str4.expandtabs(tabsize=20))      # 对\t的空格数改为20,默认为4
25 print(str4.find('b'))        # 查找到的第一个元素,返回下标号
26 print("##########")
27 
28 # 格式化输出
29 print(str4.format(name = 'beijing'))    # 将name改为具体的名字
30 print(str4.format_map({'name':'shanghai'}))
31 print(str4.index('b'))      # 查找索引值,和fund()相似,但是index找不到会报错
32 print(str4.isalnum())       # 不常用,是否是数字,字母,中文
33 print(str4.isdecimal())     # 不常用,是否是十进制的数
34 print(str4.isdigit())       # 是否为数字
35 print(str4.isnumeric())     # 是否为数字
36 print(str4.isidentifier())      # 是否为非法变量
37 print("##########")
38 print(str4.islower())       # 是否都是小写
39 print(str4.isupper())       # 是否都是大写
40 print(str4.isspace())       # 是否是个空格
41 print(str4.istitle())       # 每一个词的首字母是否是大写
42 print(str4.lower())         # 大写全部变小写
43 print(str4.upper())         # 小写全部变大写
44 print(str4.swapcase())      # 字母大小写反转
45 print(str4.ljust(100,':'))         # 向左对齐
46 print(str4.rjust(100,':'))          # 向右对齐
47 print("##########")
48 print(str4.strip())         # 去掉换行符,空格
49 print(123)          # 前面的换行符被去掉
50 print("##########")
51 print(str4.replace('city','城市'))        # 替换内容,也可以部分替换
52 print(str4.rfind('t'))      # 真实的索引位置
53 print(str4.split(' '))      # 字符串的分割
54 print(str4.rsplit('b',1))   # 以右为准,以目标分割,分割一次

 

posted @ 2017-08-10 00:06  Infi_chu  阅读(1313)  评论(0编辑  收藏  举报