列表list
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
li = ['tim',[123],'zhangteng','godness','女神','taibei']
s1=li[0]print(s1)
s2= li[1]print(s2)
s3= li[0:3]print(s3)
tim
[123]
['tim', [123], 'zhangteng']
增
li = ['tim',[123],'zhangteng','godness','女神','taibei']
li.append('日天')
li.append(1)print(li)
['tim', [123], 'zhangteng', 'godness', '女神', 'taibei', '日天', 1]
持续插入
li = ['tim',[123],'zhangteng','godness','女神','taibei']
while 1:
username= input(">>>>>>>>")if username.upper().strip() == 'Q':break
else:
li.append(username)
print(li)>>>>>>>>gogo>>>>>>>>titi>>>>>>>>q
['tim', [123], 'zhangteng', 'godness', '女神', 'taibei', 'gogo', 'titi']
insert插入
li = ['tim',[123],'zhangteng','godness','女神','taibei']
li.insert(5,'papa')print(li)
['tim', [123], 'zhangteng', 'godness', '女神', 'papa', 'taibei']
extend插入
li = ['tim',[123],'zhangteng','godness','女神','taibei']
i.extend('二狗')print(li)
['tim', [123], 'zhangteng', 'godness', '女神', 'taibei', '二', '狗']
li.extend([1,2,3])print(li)
['tim', [123], 'zhangteng', 'godness', '女神', 'taibei', 1, 2, 3]
删
pop
li = ['tim',[123],'zhangteng','godness','女神','taibei']#li.pop(0) #返回值
name = li.pop() #默认删除最后一个
print(li)
['tim', [123], 'zhangteng', 'godness', '女神']
remove
li = ['tim',[123],'zhangteng','godness','女神','taibei']
li.remove('zhangteng') #按照元素去删除
print(li)
['tim', [123], 'godness', '女神', 'taibei']
clear
li = ['tim',[123],'zhangteng','godness','女神','taibei']
li.clear()print(li)
[]
del 列表 #删除列表
切片删除
li = ['tim',[123],'zhangteng','godness','女神','taibei']del li[2:]print(li)
['tim', [123]]
改
li = ['tim',[123],'zhangteng','godness','女神','taibei']
li[0]= '男神'
print(li)
['男神', [123], 'zhangteng', 'godness', '女神', 'taibei']
li = ['tim',[123],'zhangteng','godness','女神','taibei']
li[0:2] = 'yunjie'
print(li)
['y', 'u', 'n', 'j', 'i', 'e', 'zhangteng', 'godness', '女神', 'taibei']
按照索引去更改
li = ['tim',[123],'zhangteng','godness','女神','taibei']
li[0:3]=[123,'皇帝','游侠']
print(li)
[123, '皇帝', '游侠', 'godness', '女神', 'taibei']
查
li = ['tim',[123],'zhangteng','godness','女神','taibei']for i inli:print(i) #查询每个元素
print(li[0:2]) #查出的是个列表
tim
[123]
zhangteng
godness
女神
taibei
['tim', [123]]
li = ['tim',[123],'zhangteng','godness','女神','taibei']
l=len(li)print(l)6
count
li = ['tim',[123],'zhangteng','godness','女神','taibei']#l = len(li)#print(l)
num = li.count('tim')print(num)1
查询索引
li = ['tim',[123],'zhangteng','godness','女神','taibei']print(li.index('zhangteng'))2
排序-sort
正向排序
li = [1,3,5,7,9,0]
li.sort()print(li)
[0,1, 3, 5, 7, 9]
反向排序
li = [1,3,5,7,9,0]#li.sort() #正向排序#print(li)
li.sort(reverse=True) #逆向排序
print(li)
[9, 7, 5, 3, 1, 0]
反转
li = [1,3,5,7,9,5]#li.sort() #正向排序#print(li)#li.sort(reverse=True) #反向排序#print(li)
li.reverse() #反转
print(li)
[5, 9, 7, 5, 3, 1]
列表的嵌套
li = ['taibai','武藤兰',['tim','egon'],83]
name=li[0].capitalize()print(name)
li[0]=nameprint(li)
['Taibai', '武藤兰', ['tim', 'egon'], 83]
li = ['taibai','武藤兰',['tim','egon'],83]
li[2]= '菊日天'
print(li)
['taibai', '武藤兰', '菊日天', 83]
li = ['taibai','武藤兰',['tim','egon'],83]
li[1] = li[1].replace('兰','111')print(li)
['taibai', '武藤111', ['tim', 'egon'], 83]
li = ['taibai','武藤兰',['tim','egon'],83]
li[2][0] = li[2][0].upper()print(li
['taibai', '武藤兰', ['TIM', 'egon'], 83]
元祖
元祖tuple。
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")
tu = (1,2,3,'tim','egon',[6,7,8,'taibai'])#print(tu[3])
tu[5][3] = tu[5][3].upper()print(tu)
(1, 2, 3, 'tim', 'egon', [6, 7, 8, 'TAIBAI'])
tu = (1,2,3,'tim','egon',[6,7,8,'taibai'])
tu[5].append('sb')print(tu)
(1, 2, 3, 'tim', 'egon', [6, 7, 8, 'taibai', 'sb'])
join 引用什么相连接
s = 'tim's1= '_'.join(s)print(s1)
t_i_m
join 列表转换成字符串
li = ['taibai','tim','123']
s= '+++++'.join(li)print(s)
taibai+++++tim+++++123
str转换成列表split()
range
for i in range(0,10):print(i)
01
2
3
4
5
6
7
8
9
for i in range(0,10,2):print(i)
02
4
6
8
li = [1,2,3,4,'tim',[6,7,8,9,'taipai'],'papa']for i inrange(len(li)):if type(li[i]) ==list:for j inli[i]:print(j)else:print(li[i])1
2
3
4tim6
7
8
9taipai
papa