一、列表
列表概念
列表类似于Java中的数组,可以存储很多且有固定的顺序,唯一的区别是同一个列表可以存储多种不同类型的值
创建方法一:直接创建
list1 = ['haha','he',1024,666]
list2 = [1,2,3,4,5]
list3 = ["a","b","c","d"]
print(list1)
print(list2)
print(list3)
print(type(list1),type(list2),type(list3))
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/5815ad8085b2d0bfd6d9da54257eac41.png)
创建方法二:使用list()方法直接创建(*list()方法只能接收一个序列值作为参数)
list1 = list("haha")
print(list1)
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/118846b67536dbbc458d0fedef43c289.png)
从运行结果可以看出将这个字符串拆分成一个一个的字符
列表的索引和元素访问
列表有正索引和负索引两个部分
例如:
list1 = [0,1,2,3,4,5]
print(list1[0])
print(list1[-4])
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/ee27097b709bb3ffbfe327992550fc27.png)
从运行结果可以看出list1这个列表从正面数角标为0的值为0;从负面数的话角标-4的值为2.
列表更新和遍历
列表的更新,也就是将列表中的某一个元素进行更改,替换掉就可以了。
例如:
a = ["a","b","c"]
a[0] = "你"
a[1] = "我"
a[2] = "他"
print(a)
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/fe0e87ecb12e43029313bc9d6230410b.png)
我们可以看出将原列表中的"a","b","c"依次替换为"你","我","他"
len()表示的是长度,也就是列表中元素的多少。
例如:
a = ["a","b","c"]
print(len(a))
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/f8d1ee4e9c9ef6754ffada36c391a407.png)
通过运行结果可以看出这个列表的长度为3
练习:已知列表li=[1,2,3,4,5,6,7],将列表中的所有奇数+5后输出列表。
li = [1,2,3,4,5,6,7]
for i in li:
if i % 2 == 1:
print(i + 5)
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/3e44d8589cc7594d26d0a168e7caead0.png)
列表的截取
两个“:”,用于分隔三个参数(start_index:end_index:step)
step:正负都可以,它的绝对值决定了数据的步长,正负号决定了方向,正表示从左到右,负表示从右到左。当省略step时,默认从左到右且步长为1.
start_index:包含这个值
end_index:不包含这个值,省略时,表示遍历到这个数的末尾
示例:
list1 = [1,2,3,4,5]
list2 = list1[1:] # 角标1之后,包含角标1
print(list2)
list3 = list1[:4] # 角标4之前,不包含角标4
print(list3)
list4 = list1[2:4] # 角标2到角标4之间
print(list4)
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/caa41791a3a5205826ebf1a25dd34cb9.png)
列表的统计查找
判断列表中是否含有特定的值使用in命令,in前面为特定的值,后面为列表名称
格式:元素名 in 列表名
返回值:True或者False,其中True代表的是有,False代表的是没有
示例:
list1 = [1,33,65,54,77]
print(65 in list1) #True
print(88 in list1) #False
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/ecc2f33c5f274177d1ecd567cef40cde.png)
列表中元素的查找、
列表名.index():输出的是元素在列表中的下标位置
使用格式:列表名.index(查找的元素)
返回值:有返回下标,没有返回-1
列表中某个元素出现的次数
格式:列表名.count(查找的元素)
返回值:该元素在列表中的数量,如果列表中不包含,则返回0
示例:
list2 = ["1","2","3","4","5"]
list2.append("3")
list2.append("3") #append添加
print(list2.count("3"))
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/104ef1176a2d7c3e9ce5242d173b320d.png)
4.列表中的最大值和最小值(数据类型必须一致)
max(列表) 最大值
min(列表) 最小值
列表的追加和删除
列表名.append() 向最后添加
列表名.pop() 删除最后一个
列表名.remove() 列表中第一次出现指定的值的元素
二、字符串
字符串可以使用一对引号或者str()进行创建,str()可以将任意数据类型转化为字符串并返回。
a = "123"
print(a)
print(type(a)) #str
lis = [1,2,3,4]
b = str(lis)
print(b)
print(type(b)) #str
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/fbf2d0dc9ad106adf5a8dee1047c8da0.png)
字符串的使用
操作符 | 说明 | 实例 |
+ | 字符串连接 | a + b输出结果:HelloWorld |
* | 重复字符串 | a*2 输出结果为:HelloHello |
in | 成员运算符- 如果字符串中包含返回 True | 'H' in a 输出结果 True |
not in | 成员运算符 - 如果字符串中不包含给定的字符串返回True | 'G' not in a 输出结果为 True |
字符串分割
split()对字符串进行分割
a = "a,bb,cccc,dddd"
b = a.split(',')
print(b)
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/dcd537c2cb19f5d314010a8fd2f6e88a.png)
我们可以看出将这个字符串按照','进行分割成数组
字符串的索引
字符串的索引和列表类似,区别是以元素作为单位,字符串以单个字符作为单位。
字符串的长度:len()
字符串的统计方法:count()
a = "Hello World"
print(a[0]) #从前数
print(a[-1]) #从后数
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/06afb9a262ce502bf2c0c41f5d4ea473.png)
三、元组
元组的创建:在括号中添加元素,并用逗号隔开
a = ('abc','def','ghi',2048,1096)
b = (1,2,3,4,5)
c = "a","b","c","d"
print(a)
print(b)
print(c)
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/16beaee4852998c39b5c036d80fc8871.png)
元组中只包含一个元组时,需要在元素后添加逗号。
a = (22,)
四、字典
字典由键和值组成,使用{ }来建立。
注:字典的键(key)不可重复且必须为不可变数据类型,所以可以使用数字、字符串、元组,而列表就不可以。
创建格式:
d = {key1:value1,key2:value2}
示例:
a = {'牛奶':18,'鸡蛋':30}
print(a)
print(a['牛奶'])
其运行结果为:
![](https://i-blog.csdnimg.cn/blog_migrate/1a5534383c993766fd0287cd472eb6b5.png)