自学内容网 自学内容网

python学习记录8

(1)列表

列表是组合数据类型的一种。所谓组合数据类型是指变量的值不只有一个,列表由一系列按照特定元素的排列形成,并且里面的元素可以是任意的数据类型且可变,因此列表是可变序列。

列表可以用两种方式创建:使用[ ]直接创建列表,或者使用python内置函数list(),列表中的元素均需要用英文逗号隔开。

使用del可以删除列表,由于列表属于序列的一种,因此也可以用序列的基础操作。

#列表的定义
l1 = [1,2,3,'a','c']
l2 =list([2,4,6,8])
l3 = list(range(1,10,3))
#列表的操作
print(l1)#打印
print(l1+l2)#加法
print(l1*3)#数乘
print(3 in l3)#查询列表中是否含有该元素
print(max(l2))#求列表中的值最大的元素
print(min(l2))#求列表中的值最小的元素
print(l1.index('a'))#找出某个元素在列表中第一个出现的位置
print(l1.count(1))#统计列表中某个元素出现的次数
del l1#删除l1

列表可以进行遍历操作,所谓遍历操作就是指对列表中的每个元素都进行一次访问,遍历操作可以用for循环、for+索引以及enumerate函数

enumerate函数就是枚举,输出列表中元素的序号和元素。语法为:

for 变量1,变量2 in enumerate(列表,起始序号)

这里的起始序号是可以手动修改的,可以用(列表,start = X),也可以直接直接用(列表,X)

#使用for取遍历列表
l = ["你","zhen","shuai",123]
for i in l:
    print(i)
#使用for+索引遍历列表
for i in range(0,len(l)):
    print(l[i])
#使用enumerate函数遍历列表
for i,j in enumerate(l):
    print(i,j)
#修改遍历的起始序号
for i,j in enumerate(l,3):
    print(i,j)

列表作为一个可变序列,其表项中的元素是可以增加、删除、修改的。具体操作有:

列表名.append(x):在列表的最后增加一个元素x

列表名.insert(index,x):根据索引在列表中序号为index的元素前面增加一个元素x

列表名.clear():清除列表中所有的元素

列表名.pop(index):将列表中序号为index的元素删除

列表名.remove(n):删除列表中的第一个值为n的元素删除元素

列表名.reverse():将列表中的元素反转

列表名.copy():将列表中所有的元素复制并生成一个新的列表

#列表的操作
l.append(666)#尾部增加元素666
print(l)
l.insert(2,888)#在序号为2的元素前面插入一个元素888
print(l)
l.pop(3)#删除序号为3的元素
print(l)
l.remove(888)#删除第一个值为888的元素
print(l)
l.reverse()#反转列表
print(l)
L = l.copy()#复制列表
print(L)
L.clear()#清除列表
print(L)

除此之外,列表还可以进行排序操作,排序的方法有两种:

使用列表名.sort(key=关键字,reverse =True/False)其中关键字默认没有,True为降序排序,False为升序排序,默认为升序排序。或者使用python内置函数sorted(列表名,key =关键字,reverse(排序方式))

#列表的排序
ls = [1,8,4,3,6,5,3,7,9,1]
ls.sort()
print(ls)
#使用内置函数
new_ls=sorted(ls,reverse=True)
print(new_ls)
#排序单词
str_ = ['hello','Thank','banana','Apple']
str_.sort()
print(str_)
str2_ = sorted(str_,key = str.lower)#列表所有英文字符转小写再排序
print(str2_)

创建一个列表也可以用生成式的方式,语法结构为:列表名 = [变量表达式 for 变量 in range(x,y)],也可以生成随机数的列表

#生成式创建列表
import random
lst_=[i for i in range(1,10,2)]
print(lst_)
lst2_ =[i*2 for i in range(1,10)]
print(lst2_)
lst3_=[random.randint(1,10) for i  in range (1,10)]
print(lst3_)

列表有一维列表,也有二维列表,二维列表的创建与一维列表相似,语法结构为:

列表名 = [

                [ 第一行列表],

                [第二行列表],

                [……],

                [最后一行列表]

                    ]

注意二维列表每一行除了最后一行末尾带个英文逗号,二维列表的输出则需要一个二层的嵌套循环

A =[
    [1,2,3,4],
    [3,4,5,6],
    [5,6,7,8],
    [7,8,9,10]
]
for l in A:
    for r in l:
        print(r,end=" ")
    print()


原文地址:https://blog.csdn.net/lewisCK/article/details/142731899

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!