序列
笔记:
在Python中,最基本的数据结构为序列。序列中每个元素都有编号,其位置或索引,其中第一个元素索引为0,第二个为1,以此类推。
Python内置多种序列,其中包含列表、元组、字符串等,他们都可以称为“容器”(字典也称作容器)。
注意:列表可以修改,而元组和字符串则不能修改(可以重新赋值)。
@通用的序列操作:
1 索引:访问列表中的元素
正向索引:
复制代码
x = "请输入带有符号的温度值:"
print(x[1])
打印结果:
输
复制代码
复制代码
x = "请输入带有符号的温度值:"[1]
print(x)
打印结果:
输
复制代码
反向索引:
复制代码
x = "请输入带有符号的温度值:"
print(x[-1])
打印结果:
:
复制代码
2 切片:访问多个特定范围内的元素
复制代码
x = "请输入带有符号的温度值:"
print(x[0:3])
打印结果:
请输入
复制代码
复制代码
x = "请输入带有符号的温度值:"
print(x[-3:-1])
打印结果:
度值 (包左不包右)
复制代码
复制代码
x = "请输入带有符号的温度值:"
print(x[-1:-3])
打印结果:
(值为空,切片反向递减,索引应从小到大)
复制代码
切片遍历整个序列:
复制代码
x = "请输入带有符号的温度值:"
print(x[:])
打印结果:
请输入带有符号的温度值: ([:]遍历整个序列)
复制代码
序列步长:
复制代码
x = "请输入带有符号的温度值:"
print(x[0:12:2]) #步长为2(步长不能为0,否者无法向前移动,可以为负数,即从右向左提取元素。 )
打印结果:
请入有号温值
复制代码
笔记:切片提供两个索引来指定切片范围,第一个索引的元素包含在切片内,第二个索引指定的元素不包含在切片内。(包左不包右)
3 相加:序列的拼接
字符串拼接:
复制代码
x = "hello"
y = ",world"
print(x+y)
打印结果:
hello,world
复制代码
序列拼接
复制代码
x = [1,2,3]
y = [4,5,6]
print(x+y)
打印结果:
[1, 2, 3, 4, 5, 6]
复制代码
字符串和序列拼接
复制代码
x = "hello"
y = [4,5,6]
print(x+y)
Traceback (most recent call last):
File "", line 1, in
TypeError: can only concatenate str (not "list") to str
复制代码
笔记:不能拼接不同类型的序列。
4 相乘:创建n个空元素
复制代码
x = [None]*10
print(x)
打印结果:
[None, None, None, None, None, None, None, None, None, None]
复制代码
5 成员资格:检查特定的值是否包含在序列中,in和not in(返回值为bool值)
复制代码
x = "abcdefg"
print('w' not in x)
打印结果:
True
复制代码
复制代码
x = "abcdefg"
print('a' in x)
打印结果:
True
复制代码
·列表(list)
笔记:
list():它实际上是一个类,有很多特有的方法。
将字符串转换为字符串列表:
复制代码
x = list("hello")
print(x)
打印结果:
['h', 'e', 'l', 'l', 'o']
复制代码
将字符串列表转换为字符串:
复制代码
x = ['h', 'e', 'l', 'l', 'o']
print(''.join(x))
打印结果:
hello
复制代码
@列表的基本操作:
1 修改列表:给元素赋值
复制代码
x = [1,3,3]
x[1] = 2
print(x)
打印结果:
[1, 2, 3]
复制代码
2 删除列表中的元素
复制代码
x = [1,3,3]
del x[1]
print(x)
打印结果:
[1, 3]
复制代码
3 切片赋值
插入:
复制代码
x = [1,5]
x[1:1] = [2,3,4] #[1:1]在索引 1 后插入[1,2,3]
print(x)
打印结果:
[1, 2, 3, 4, 5]
复制代码
替换:
复制代码
x = list("persons")
x[1:] = list("ython") #[1:]可将索引 1 后的切片全部替换
print(x)
打印结果:
['p', 'y', 't', 'h', 'o', 'n']
复制代码
@列表中的方法
1 append:添加一个对象到末尾
2 pop:删除末尾最后一个元素
3 clear:清空表格
4 copy:复制列表
5 count:计算列表中特定元素出现了多少次
6 extend:将多个值添加到列表末尾(需要区分与拼接的不同,拼接不改变x值)
7 index:查找指定值第一次出现的索引
8 insert:在指定位置差入一个对象(可读性优于extend)
9 remove:删除指定值的元素
10 reverse:反向排序列表中的元素
11 sort:接受key和reverse两个参数,对列表中的数进行有逻辑的排序(永久排序)
顺序:
复制代码
x = [5,2,1,4,3]
x.sort()
print(x)
打印结果:
[1, 2, 3, 4, 5]
复制代码
倒序:
复制代码
x = [5,2,1,4,3]
x.sort(reverse = True)
print(x)
#打印结果:
[5, 4, 3, 2, 1]
复制代码
按元素长度排序:
复制代码
x = ['apple','beer','to','g','banana']
x.sort(key=len)
print(x)
#打印结果:
['g', 'to', 'beer', 'apple', 'banana']
复制代码
12 sorted函数:临时排序
13 len函数:获取列表的长度
·元组(tuple)
笔记:
元组也是序列,区别在于元组不能修改。
复制代码
print(tuple([1,2,3]))
print(tuple("abcdefg"))
#打印结果:
(1, 2, 3)
('a', 'b', 'c', 'd', 'e', 'f', 'g')
复制代码
将元组赋值给x:
复制代码
x = 1,2,3
print(x)
#打印结果:
(1, 2, 3)
复制代码
创建多个元组:
复制代码
x = 3 * (40+2,)
print(x)
#打印结果:
(42, 42, 42)
复制代码
元组中只有一个值时,也必须在它后面加逗号(,):
复制代码
x = (2,)
print(x)
#打印结果:
(2,)
复制代码
end~
****** 几米花的Python ****** 博客主页:https://www.cnblogs.com/jimmy-share/ 欢迎转载 ~https://www.cnblogs.com/jimmy-share/p/9762949.html