数据类型序列,列表与元组第四课

序列

列表list[]

特征

a =['我', '爱', '小', '玉', '呀']
print(type(a))                     # 列表可以存放多个不同类型的数据,每组数据都要用逗号隔开
print(a)                           
<class 'list'>
['我', '爱', '小', '玉', '呀']

增删改查

增 
append                       # 它只能在列表尾部添加数据,只要是指定的类型数据都能添加进去    重点
a = ['爱', 'xiao', '玉']                           
a.append('呀')                a.append(['呀'])----------# 在append()添加一个列表之后不会再生成一个新列表
print(a)                      print(a)                   
['爱', 'xiao', '玉', '呀']    ['爱', 'xiao', '玉', '[呀]']


insert(插入)下标,元素                   
a = ['xiao', 'yu']       # 它可以在你指定位置添加数据类型,不会覆盖原来的数据,原来位置的数据会向后移一位。
a.insert(0, 'I love you') 
print(a)
['I love you', 'xiao', 'yu']


extend()
a = ['wo', 'ai']
a.extend('小玉')         # 这里是将字符串拆分后,在尾部逐一进行添加进去;
print(a)
['wo', 'ai', '小', '玉']

a = ['wo', 'ai']
a.extend(['xiao', 'yu']) # 这里是指用list[列表]分层来抵消extend的拆分之后在尾部添加进去。
print(a)
['wo', 'ai', 'xiao', 'yu']


删# 重点
pop                        #通过索引下标进行删除.不下标时默认删除最后一个数据
b = ['love', 'yu', 'y']   
b.pop()                       b.pop(2)
print(b)                      print(b)
['love', 'yu']                ['love', 'yu']

remove   # 是用来删除已知数据的,如果存在多个相同的数据时,只会删除最前面相同的数据
c = ['i', 'love', 'xiao', 'yu', 'i']     
c.remove('i')
print(c)
['love', 'xiao', 'yu', 'i']

clear                      #它会清空列表里面的全部数据-----(重点记)
d = ['xiao', 'yu', 'i', 'love', 'you']
d.clear()
print(d)
[]

del  #注意用del的时候后面不能单一跟变量名,否则它会把你的变量名删除,运行就报错。del是通过索引下标来进行删除的,也可以指定范围删除.           
a1 = ['i', 'x', 'y']    
del a1[1]         del a1[1::2]          
print(a1)         print(a1)
['i', 'y']        ['i', 'y']


改                             #    通过索引下标之后,对索引取值部分进行重新赋值就能达到修改的效果。
a2 =['i', 'x', 'y', 'y']          
a2[1:] = ['xiao','yu']
print(a2)
['i', 'xiao', 'yu']



查
index                          
b1 = ['w', 'i', 'x', 'y']
b2 = b1.index('y')        #     通过索引下标来查元素的位置
print(b2)              print(b2.index('i'))       
3                      1

b1 = ['w', 'i', 'x', 'y']
b2 = bi.index('x', 1, 3)  #   也可以通过索引下标来指定范围查找元素位置,但是在指定范围找不到就会报错。   
print(b2)              print(b2.index('w', 1, 3))
2                      ValueError: 'w' is not in list(异常:'w'不在list中)

count                     #   查找元素出现的次数
c1 = ['x', 'y', 'w', 'i', 'n', 'w', 'i', 'x', 'y']
c2 = c1.count('y')
print(c2)
2

索引查询                  # 通过索引来查询列表里位置的对应数据
d1 = ['x', 'y', 'w', 'i', 'n', 'w', 'i', 'x', 'y']
print(d1[0:8])
['x', 'y', 'w', 'i', 'n', 'w', 'i', 'x']

扩展

copy()  #复制序列
b = ['a', 'b', 'c']
c = b.copy()          #copy之后值一样,但内存地址不一样
print(b)
print(c)

reverse #倒序
index_1 = ['y', 'x', 'i', 'w', 'n', 'i', 'w', 'y', 'x']   #它会改变了列表本身
index_1.reverse()
print(index_1)
['x', 'y', 'w', 'i', 'n', 'w', 'i', 'x', 'y']

sort #正向排序
reverse_1 = ['y', 'x', '2']   # 它也会改变列表本身
reverse_1.sort()  # 注意:数值类型(int和float)和str(字符串)进行排序时数值类型要转换成字符串 才不会报错。
print(reverse_1)

reverse_1.sort(reverse = True)
print(reverse_1)
['y', 'x', '2']                                                #这里指排序之后再用reverse=True进行倒序了

copy                               #复制列表
sort_1 = ['x', 'y', 'w', 'i','you']
count_1 = sort_1.copy()
cout_1.copy()
print(count_1)
['x', 'y', 'w', 'i', 'you']


元组()tuple

元组里面包括的数据要加逗号(,),当()里只有一个元素,元素后面没有跟逗号,不是元组
index_1 =('y')           index_1 = ('y',)           #type(查看数据类型)
print(type('index_1'))   print(type('index_1'))     #str(字符串)
str                      tuple

只能被查,用index查看下标(和常规查法一样),count查看次数
sort_1 = ('i', 'x', 'y')          
print(sort_1.index('y'))        
2           


元组不能被增删改,但可以用转类型方法进行修改
上一篇:javascript – 如何在R highcharter(可能的其他包)中制作3级钻取图


下一篇:L1-059 敲笨钟 (20 分)