Python的回顾-7月27日

序列中的列表

一,序列的概念
1,序列是一种用于存放多个值的连续空间,并且按一定顺序排放,每个值都分配有一个数字(索引),这里我们可以联想到Java与c语言中的数组,但是python比较特殊,它的索引可以为负值。
2,索引
序列中的每一个元素都有一个编号,我们称之为索引。
0 1 2 3 4 5…

-1 -2 -3 -4 -5…
因为每个元素的索引是不同的,所以我们可以通过索引来访问序列中的元素。
格式:
序列名[索引值]
3,切片
切片也是一种访问序列中的元素的一种方法,但又有所不同,它可以访问一定范围内的元素,生成一个新的序列。
格式:
序列名[start🔚step]
start:切片开始的位置,默认为0.
end:切片结束的位置(不包括该位置),默认为序列的长度。
step:切片的步长,默认为1。
代码:

boss=['我是','猪','吗','我不是']
big_boss=boss[0:3]
print(big_boss)

结果:
在这里插入图片描述
4,序列相加
使用+可以将2种相同类型的序列相加。

boss=['我是猪吗']
Alex=['我不是']
bigboss=boss+Alex
print(bigboss)

结果:
在这里插入图片描述
5,乘法
使用*,可以使序列重复。
代码:

boss=['我是猪吗']
print(boss*3)

在这里插入图片描述
6,检查某个元素是否在序列中
格式
元素 in 序列

元素 not in 序列
结果为true或false。

7,计算序列的长度,最大值,最小值。
len(序列名)
max(序列名)
min(序列名)
注意:max()与min()可以适用与元素为字符串的序列,这与MySQL是不同的。

boss=['我是猪吗','我是']
print(max(boss))

在这里插入图片描述
二,列表

1,定义
python的列表与歌曲列表相似,也是按照顺序排列的一系列元素组成的可变序列。
在形式上,列表中所有元素都放在[]中,相邻元素用“,”隔开。
在内容上,python支持的数据类型都可以放入列表中,且在同一个列表中,每个元素类型可以不同,但是我一般不这样搞。
在这里插入图片描述

2,列表的创建
使用赋值运算符直接创建列表。
listname=[元素1,元素2,元素3,…,元素n]
特别的,我们可以创建一个空列表。
如:emptylist=[]
3,删除列表
del 列表名
4,访问列表中的元素
print(列表名)
或者
print(列表名[索引])
前者为访问整个序列,后者为防蚊序列中的某一个元素。
5,遍历列表
解释:查询完列表中的所有元素。
方法一:用for循环
格式:
for item in listname:
XXXXXprint(item)
X为空格。
代码:

boss=['我是猪吗','我是']
for item in boss:
    print(item)

结果:
在这里插入图片描述
方法二:使用for循环与enumerate()函数
格式:
for index,item in ennumerate(listname):
XXXXXXXprint(index,item)
这个方法会查询出每个元素和它对于的索引。
代码:

boss=['我是猪吗','我是']
for index,item in enumerate(boss):
    print(index,item)

在这里插入图片描述
6,添加,修改,删除列表中的元素
添加元素:
方法一,使用python内置的append()函数
listname.append(元素)
这个只能在元素末尾追加元素。
方法二,使用“+”,连接2个序列。
不推荐该方法
方法三,
使用insert()方法,在序列中插入元素
insert(index,元素)
方法四,
使用extend()函数,将一个序列全部加入另一个序列。
listname.extend(序列名)

修改元素:
序列名[需要修改的元素的索引]=修改后的值

删除元素:
方法一,根据索引删除
del 序列名[索引]
方法二,根据元素值删除
序列名.remove(元素值)

7,对列表进行统计
统计序列中某一元素出现的次数
listname.count(元素)

获取指定元素首次出现的索引
listname.index(元素)

对于数值列表,我们可以使用sum()函数,统计元素和。
sum(listname)

8,对列表进行排序
方法一,使用sort()排序
listname.sort(reverse=True)
True为升序,False为降序,默认为升序。
方法二,使用sorted()排序
sorted(listname,reverse=True)
默认为升序,该方法有一个好处,原序列不变
代码:

grade=[98,99,100,98,97]
grade1=sorted(grade) #升序
print(grade1)
grade1=sorted(grade,reverse=False) #降序
print(grade1)
print(grade)

在这里插入图片描述
9,列表推导式
newlist=[expression for i in list]
expression:表达式,用于计算新的元素。
list:原列表
注意:expression中含有i
代码:

price=[1200,1888,999]
sale=[int(i*0.5) for i in price]
print(price)#原价格
print(sale)#现价格

结果:
在这里插入图片描述
从列表中选择符合条件的元素,进入expression中进行计算。
newlist=[expression for i in list if conditon]
代码:

price=[1200,1888,999]
sale=[int(i*0.5) for i in price if i>1000]
print(price)#原价格
print(sale)#现价格

在这里插入图片描述
10,二维列表
定义:列表中的元素又是一个列表。
1,创建方法
方法一,直接定义
list=[[list1],[list2],…[listn]]
方法二,使用嵌套的for循环
比如,我们创建一个4行5列的二维列表。
代码:

emptylist=[]
for i in range(4):
    emptylist.append([])
    for j in range(3):
        emptylist[i].append(j)
print(emptylist)

在这里插入图片描述
方法三,使用列表推导式

list=[[j for j in range(3)] for i in range(4)]
print(list)

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值