python基础数据类型--list列表

时间:2023-01-27 14:59:46

列表:

列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:

li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]

列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。

#列表能放字符串、数字、列表、字典,当都不会改变列表的属性
li = ['alex',100,True,[1,2,3],{'name':'太白'}]

1.索引、切片、切片+步长

索引

li = ['alex',100,True,[1,2,3],{'name':'太白'}]
print(li[0],type(li[0]))
#运行结果 alex <class 'str'>

切片+步长

li = ['alex',100,True,[1,2,3],{'name':'太白'}]
print(li[0:2])
print(li[0:3:2])
print(li[-1:1:-1])

2.增、删、改、查

l1 = ['alex','wusir','taibai','egon','景女生','文周老师','日天']

增:

append 追加。

l1 = ['alex','wusir','taibai','egon','景女生','文周老师','日天']
l1.append('小温老师')
print(l1) #['alex', 'wusir', 'taibai', 'egon', '景女生', '文周老师', '日天', '小温老师'] #循坏追加姓名,输入Q or q退出并打印列表。
name_list = ['赵三','李四']
while 1:
username = input('请输入新员工姓名').strip()
if username.upper() == 'Q':
break
name_list.append(username)
print(name_list)

inser:插入添加:

l1 = ['alex','wusir','taibai','egon','景女生','文周老师','日天']
l1.insert(1,'宝源')
print(l1)

expend:迭代追加

l1 = ['alex','wusir','taibai','egon','景女生','文周老师','日天']
l1.extend('')    #['alex', 'wusir', 'taibai', 'egon', '景女生', '文周老师', '日天', '1', '1', '1', '1']
l1.extend('alex')    #['alex', 'wusir', 'taibai', 'egon', '景女生', '文周老师', '日天', '1', '1', '1', '1', 'a', 'l', 'e', 'x']
print(l1)

删除

pop:按照索引去删除,pop(index),index为索引,默认不填时删除列表最后一个元素,pop删除会返回删掉的元素.如果index超过列表本身的长度,则运行回报错

l1 = ['alex','wusir','taibai','egon','景女生','文周老师','日天']
print(l1.pop(0))    #返回 alex
print(l1)      #['wusir','taibai','egon','景女生','文周老师','日天']

remove:按照列表元素去删除,使用方法:.remove(‘字符串’),注意如果要删除的字符串在列表中不止一个,只会从左到右删掉第一个。

l1 = ['alex','wusir','taibai','egon','景女生','文周老师','日天','alex']
l1.remove('alex') #运行结果:['wusir', 'taibai', 'egon', '景女生', '文周老师', '日天', 'alex']
print(l1)
l1.remove('alex') #运行结果:['wusir', 'taibai', 'egon', '景女生', '文周老师', '日天']
print(l1)

del :按照索引位置去删除列表元素,可切片可切片加步长

# l1 = li.pop(1) #按照位置去删除,有返回值
# print(l1) # del li[1:3] #按照位置去删除,也可切片删除没有返回值。
# print(li) # li.remove('a') #按照元素去删除
# print(li) # li.clear() #清空列表 列表的删

切片去查,或者循环去查。

其他操作

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)