一、列表
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
1、增
1.1、append()增加到最后
li = ['a','b',123,'你好',1]
# append增加到最后
li.append('abc')
print(li)
输出结果 :['a', 'b', 123, '你好', 1, 'abc']
1.2、insert()插入,按照索引去增加
li = ['a','b',123,'你好',1]
li.insert(2,'早')
print(li)
输出结果 :['a', 'b', '早', 123, '你好', 1]
1.3、extend ()迭代的去增
li = ['a','b',123,'你好',1]
li.extend('abcdef')
print(li)
li.extend([1,2,3])
输出结果 :
['a', 'b', 123, '你好', 1, 'a', 'b', 'c', 'd', 'e', 'f']
['a', 'b', 123, '你好', 1, 'a', 'b', 'c', 'd', 'e', 'f', 1, 2, 3]
2、删
2.1、pop()按索引进行删除,有返回值
li = ['a','b',123,'你好',1]
li.pop(1)
print(li)
li = ['a','b',123,'你好',1]
print(li.pop(1))
输出结果 :
['a', 123, '你好', 1]
b
2.2、remove()按照元素去删除
li = ['a','b',123,'你好',1]
li.remove('你好')
print(li)
输出结果 :['a', 'b', 123, 1]
2.3、clear()清空列表元素
li = ['a','b',123,'你好',1]
li.clear()
print(li)
输出结果 :[]
2.4、de l删除
- 按照位置去删除,也可切片删除没有返回值。
li = ['a','b',123,'你好',1] del li[1:3] print(li) li = ['a','b',123,'你好',1] del li[1] print(li)
输出结果 :['a', '你好', 1] ['a', 123, '你好', 1]
- 整个列表删除
li = ['a','b',123,'你好',1] del li
3、改
1、按索引来改
li = ['a','b',123,'你好',1]
li[0] = '早'
print(li)
输出结果 :['早', 'b', 123, '你好', 1]
2、按切片来改
li = ['a','b',123,'你好',1]
li[0:3] = 'safsafkf' # 先删除切片索引元素,再按元素一个一个迭代修改
print(li)
li = ['a','b',123,'你好',1]
li[0:3] = ['a12','wqwqw']
print(li)
输出结果 :
['s', 'a', 'f', 's', 'a', 'f', 'k', 'f', '你好', 1]
['a12', 'wqwqw', '你好', 1]
其他操作。
count(数)(方法统计某个元素在列表中出现的次数)。
1 a = ["q","w","q","r","t","y"]
2 print(a.count("q"))
index(方法用于从列表中找出某个值第一个匹配项的索引位置)
1 a = ["q","w","r","t","y"]
2 print(a.index("r"))
sort (方法用于在原位置对列表进行排序)。
reverse (方法将列表中的元素反向存放)。
1 a = [2,1,3,4,5]
2 a.sort()# 他没有返回值,所以只能打印a
3 print(a)
4 a.reverse()#他也没有返回值,所以只能打印a
5 print(a)
二、元组:
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")
如,元组内元素含有列表等可变元素,(1,2,3,[2, 'aa', 3])元组内的元素不可变,列表内的元素可变
tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon')
print(tu[3]) #查找元祖下标3的元素
结果:alex
print(tu[0:4]) #查找元祖下标0-4的元素
结果:(1, 2, 3, 'alex')
for i in tu:
print(i) #循环元祖里的元素,只循环一次。
结果:1
3
alex
[2, 3, 4, 'taibai']
egon
tu[4][3]=tu[4][3].upper()
print(tu) #把元祖里面的列表一个元素全部大写
结果:(1, 2, 3, 'alex', [2, 3, 4, 'TAIBAI'], 'egon')
tu[4].append('sb')
print(tu) #在元祖里面的列表里增加元素
结果:(1, 2, 3, 'alex', [2, 3, 4, 'taibai', 'sb'], 'egon')
range() #就是一个元祖
例子:for i in range(3,10):
print(i) #循环打印一次,3-9的数字。
for i in range(10):
print(i) #循环打印一次,0-9的数字。
for i in range(0,10,3):
print(i) #循环打印一次,0-9的数字,步长3,间接输出0-9所有的被3整除的数。
for i in range(10,0,-2):
print(i) #循环打印一次,10-1的数字,反向步长为2。
for i in range(10,-1,-2):
print(i) #循环打印一次,10-0的数字,反向步长为2。