序列 - 通用操作
通用操作
- 序列的特性是 顺序是固定的,也就是有序的,可以根据下标操作元素
- 序列的每个元素对应一个下标,正向下标:从左边第一个开始(下标是正数,0 开始),反向下标:从右边第一个开始(下标是负数,-1开始)
- 可以根据下标操作元素(str 和 tuple 不能修改)
数学运算符
-
+:拼接另一个同类型的序列,返回一个新的序列两个序列必须类型一样,比如 str + str,tuple + tuple,list + list
a = [1,2,3] b = 1 print(a + b) # 报错,类型不一致 a = '1' b = 2 print(a + b) # 报错,类型不一致 a = '123' b = '456' print(a + b) # 输出 123456 -
+=:拼接另一个同类型的序列,返回一个新的序列,新的序列赋值给原来的序列(str、tuple 适用)a = '123' b = '456' a += b print(a) # 输出 123456 -
*:重复原有序列,返回一个新的序列a = (1,2,'-') print(a * 2) # (1, 2, '-', 1, 2, '-') -
*=:重复原有序列,返回一个新的序列,新的序列赋值给原来的序列(str、tuple 适用)a = '123-' a *= 3 print(a) -
比较运算符:不是直接比较序列,是依次比较序列的元素,元素转成整数来比较
t = (1, 5) t1 = (1, 3) print(t > t1) # True t2 = (0, 5) t3 = (1, 3) print(t2 > t3) # False # 报错,因为类型不同不能比较,python 只是 布尔值才会隐式转换,非布尔值不会 list = ['a', 1, 3] list3 = [65, 1, 3] print(list > list3) # 报错,类型不同不能比较 a = (1,2,'-') b = [2,3] print(a > b)
成员判断
a = (1,2,'-')
print(1 in a) # True
b = ["你好", "世界!"]
print("世界" not in b) # True,列表中是【世界!】不是【世界】
c = '12asdfasdf'
print('12a' in c) # True
print(12 in c) # 报错
下标和切片操作
-
下标操作:都可以通过下标获取元素,比如
tuple[0],str[1],list[0]。但是 str 和 tuple 不能通过下标修改s = "Hello, World!" print(s[0]) # 输出 H s[0] = 'h' # 报错 tuple = (1,2,3) print(tuple[0]) # 输出 1 tuple[0] = 0 # 报错 list = [1, 2, 3] print[0] # 输出 1 list[0] = 0 print(list) # 输出 [0, 2, 3] -
切片操作:就是截取序列,返回一个新的序列。语法格式是
xulie[start:end:step],取值是前闭后开start:切片的起始位置(包含)。默认为0。end:切片的结束位置(不包含)。默认为字符串的长度(注意不是最后一个下标)。step:步长。默认为1(正数从左至右,负数从右至左)
s = "Hello, World!" # 从索引0开始到索引5(不包括5) print(s[0:5]) # 输出 "Hello" # 从索引7开始到字符串末尾 print(s[7:]) # 输出 "World!" # 从索引0到索引5,步长为2 print(s[0:5:2]) # 输出 "Hlo" # 从索引-6开始到索引-1(不包括-1) print(s[-6:-1]) # 输出 "World" # 反向切片,获取整个字符串(不长是-1,结果就反向输出) print(s[::-1]) # 输出 "!dlroW ,olleH"
Python 内置函数
len():返回序列长度(元素个数)max():返回最大值(哪怕元素是中文或标点符号也适用)min():返回最小值。同上不管啥类型都适用sum():返回每个元素相加的值,要求元素只能是数值

浙公网安备 33010602011771号