python 入门第三节(列表、元组)

这篇博客介绍了Python中的列表和元组基础知识,包括可变字符串、基本运算符和运算符优先级。详细讲解了列表的创建、增加、删除、访问、切片和排序等操作,以及元组的创建和访问方法。还提到了多维列表和使用zip及生成器创建元组的方式。
摘要由CSDN通过智能技术生成

可变字符串

import io
s='hello sxt'
sio=io.StringIO(s)#创建新的字符串对象
sio.getvalue()
sio.seek(7)#找到字符串中相信位置的字符
sio.write('g')#改变相应位置的字符
sio.getvalue()
print(sio.getvalue())

结果

hello sgt

基本运算符

在这里插入图片描述

运算符优先级

在这里插入图片描述

列表

在这里插入图片描述
列表的创建方法有:基本语法[ ] 、list()创建、range()创建整数列表
在这里插入图片描述
推导式生成列表

>>> a=[x*2 for x in range(5)]#通过循环创建多个元素
>>> a
[0, 2, 4, 6, 8]
 a=[x*2 for x in range(100) if x%9==0]#通过if过滤元素
>>> a
[0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198]
列表的增加

append()方法

>>> a=[20,40]
>>> a.append(80)
>>> a
[20, 40, 80]

extend()方法

>>> a=[20,40]
>>> a.extend([50,60])
>>> a
[20, 40, 50, 60]

insert()插入元素

>>> a=[10,20,30]
>>> a.insert(2,100)
>>> a
[10, 20, 100, 30]

乘法扩展

>>> a=[10,20,30]
>>> a*3
[10, 20, 30, 10, 20, 30, 10, 20, 30]
列表的删除

del()

>>> A=[10,30,64,210]
>>> del A[2]
>>> A
[10, 30, 210]

pop()

>>> a=[10,20,30,40,50]
>>> b=a.pop()
>>> b
50
>>> a.pop(1)
20
>>> a
[10, 30, 40]

remove()
只删除当前列表中首次出现的指定元素

>>> a=[10,50,62,84,10,50,15]
>>> a.remove(10)
>>> a
[50, 62, 84, 10, 50, 15]
列表元素的访问

通过索引直接访问元素
在这里插入图片描述
index()获得指定元素在列表中首次出现的索引

>>> a=[10,20,30,40,50,20,30,20,30]
>>> a.index(20,3)#从索引位置3开始往后搜索的第一个20
5
>>> a.index(30,5,7)#从索引位置5到7这个区间,第一次出现30元素的位置
6

count()获得指定元素在列表中出现的次数

>>> a=[10,20,30,40,50,20,30,20,30]
>>> a.count(20)
3

len()返回列表长度

 a=[10,20,30]
>>> len(a)
3

成员资格判定

a=[10,20,30,40,50,20,30,20,30]
>>> 20 in a
True
切片操作

在这里插入图片描述

>>> a=[10,20,30,40,50,60]
>>> a[1:3:1]
[20, 30]
>>> a[1::2]
[20, 40, 60]
>>> a[1:]
[20, 30, 40, 50, 60]
>>> a[:2]
[10, 20]
>>> a[-5:-3]
[20, 30]
>>> a[::-1]
[60, 50, 40, 30, 20, 10]
>>> a[-3:]
[40, 50, 60]
列表排序

不创建新列表

>>> a=[50,70,60,40,10]
>>> a.sort()
>>> a
[10, 40, 50, 60, 70]
>>> a.sort(reverse=True)
>>> a
[70, 60, 50, 40, 10]
>>> import random
>>> random.shuffle(a)
>>> a
[70, 40, 60, 10, 50]

创建新的列表

>>> id(a)
1686697925064
>>> a=sorted(a)
>>> a
[10, 40, 50, 60, 70]
>>> id(a)
1686697918600
多维列表
a=[
    ['高小一',18,30000,'北京'],
    ['高小二',19,20000,'上海'],
    ['高小三',20,10000,'深圳'],
    ]
for m in range(3):
    for n in range(4):
        print(a[m][n],end="\t")
    print()#打印完一行,换行

高小一 18 30000 北京 
高小二 19 20000 上海 
高小三 20 10000 深圳 
元组的创建

在这里插入图片描述
用tuple()创建元组

>>> b=tuple("abc")
>>> b
('a', 'b', 'c')
>>> b=tuple([25,52,31])
>>> b
(25, 52, 31)

在这里插入图片描述
元组的访问在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
zip在这里插入图片描述

>>> a=[10,20,30]
>>> b=[40,50,60]
>>> c=[70,80,90]
>>> d=zip(a,b,c)
>>> list(d)
[(10, 40, 70), (20, 50, 80), (30, 60, 90)]
>>> 

生成器式创建元组

>>> s=(x*2 for x in range(5))
>>> s
<generator object <genexpr> at 0x0000023ED52DEE60>
>>> tuple(s)
(0, 2, 4, 6, 8)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值