python list、tuple、dict、set的主要操作汇总

目录

1、list

2、tuple

3、dict

4、Set


1、list

定义:有序列表,其中元素类型随便,长短随便,可以混合;主要功能:访问、增、删、改、查、翻转、链接、次数统计、拷贝‘、清空等;

使用方法:

#定义
tlist = ['str',100,100.0,0xab,['str'],'test','test']
print(tlist)
#访问
str = tlist[0]
tlistf = tlist[-1]
tslice = tlist[0:2]
print("用位置正向访问 : ",str)
print("用位置逆向访问 : ",tlistf)
print("用切片的方式访问 : ",tslice)
#增
tlist.append('mowei')
print("增到末尾: ",tlist)
tlist.insert(1, 'Jzhiding')
print("增到指定位置")

#删
tlist.pop()
print("删除末尾元素 :" ,tlist)
tlist.pop(1)
print("删除指定位置元素 :",tlist)
tlist.remove('test') #只删除第一个
print("删除指定值元素 :",tlist)


#改
tlist[0] = 'strnew'
print("修改索引为0的元素 :",tlist)

#查 https://blog.csdn.net/wudiyi815/article/details/7775549
re1 = 'strnew' in tlist  #判断值a是否在列表中,并返回True或False
re = 'strnew' not in tlist   #判断a是否不在列表中,并返回True或False
print("this is in and nor in : " , re1,re)


con = tlist.count('strnew')  #返回a在列表中的出现的次数
print("count strnew : ",con)

re2 = tlist.index(100)  # 返回a在列表中每一次出现的位置,默认搜索整个列表
re3 = tlist.index(100,1,4)  #返回a在指定切片内第一次出现的位置
print('查找100结果 : ',re2,re3) #注意这两个返回的都是源数组的

#翻转
rtlist = tlist.reverse()
print('翻转之后的结果 : ',rtlist)
print('翻转之后的源数组:',tlist)

#extend把参数当做可迭代的为列表添加每一个可迭代元素
tlist.extend('abc')
tlist.extend(['abc'])
print("extend 'abc' and ['abc'] : ",tlist)

#列表链接
tlist = tlist + [100]
print("列表连接:",tlist)

#计算某个元素出现的次数
tlist.count(100)
print("100出现的次数 : ",tlist)

tlistcopy = tlist.copy()
print("拷贝之后: ",tlistcopy)
tlistcopy.pop()
print("拷贝之后的数组经过修改:",tlistcopy)
print("原来的列表没改变,说明是深拷贝:",tlist)

#清空列表
tlist.clear()
print("清空之后的列表:",tlist)

2、tuple

定义:tuple是不能修改的list,所谓的不能修改是说里面的指针不能修改,不是指向的空间不能修改,例如tuple中有个list,list是可以修改的,但是tuple中的list必须是这个list;既然不能修改就只能定义;

ttuple = () #空定义
ttuple2 = (0,) #一个元素定义
ttuple3 = (0,1,'str') #多个元素定义

3、dict

定义:一个key对应一个value,key不能重复,用hash方式处理key来进行存取,可见是用空间换时间;主要功能增、删、改、排序、遍历等;

d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
print("初始dict : ",d)
#增
d['zeng'] = 100
print("增 : ",d)

#改
d['zeng'] = 99
print("改 : ",d)

#判断key在没在字典里
print('zeng' in  d)
print(d.get('Thomas', -1))
print(d.get('Thomas'))

#删
d.pop('Bob')
print("删1: ",d)
del d['zeng']
print("删2: ",d)

#排序
print(sorted(d))
#获取key列表
print(list(d))

#其它定义方式
dd=dict(sape=4139, guido=4127, jack=4098)
print("new defination : ",dd)

#遍历字典
for k, v in dd.items():
    print(k, v)

for i, v in enumerate(['tic', 'tac', 'toe']):
    print(i, v)

4、Set

定义:集合,可以理解为字典中key的集合,不能重复,且值是散乱放的没有排序;主要功能有增、删、查和集合运算等;

s = set([1, 2, 3])
print(s)

#增
s.add(4)
print("第一次add 4 : ", s)
s.add(4)
print("第二次add 4 :", 4)

#删
s.remove(4)
print("删除 4 :", 4)

#查
print(4 in s)

#集合运算
s1 = set([1, 2, 3])
s2 = set([2, 3, 4])
print(s1 & s2)
print(s1 | s2)

参考:

1、https://docs.python.org/zh-cn/3/tutorial/datastructures.html#using-lists-as-stacks

2、https://www.liaoxuefeng.com/wiki/1016959663602400/1017104324028448

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值