2021年12月4日

一、序列

定义:在python中序列是一组按顺序排列的值【数据组合】

在python中存在三种内置序列类型:字符串、列表、元组

优点:可支持索引和切片的操作

特征:第一个正索引为0,指向左端;第一个索引为负数,指向右端

二、切片

定义:【高级特性】可根据下标获取序列对象的任意部分数据

语法结构:[start:end:step] step默认1

strMsg='hello world'
print(strMsg)
print(strMsg[0])
print(strMsg[2:5])#左包含,右不包含
print(strMsg[2:])
print(strMsg[0:3])
print(strMsg[:3])
print(strMsg[::-1])#倒序输出,负号表示方向,从右到左遍历

三、列表list

定义:是一种有序的数据集合

特点:支持增删改查;列表中数据可变化【内存地址不变】;用[]表示列表类型,数据项用,分隔;支持索引和切片。

注意:数据项可以任意类型数据

#li=[]#空列表
li=[1,2,3,'你好']
print(type(li))
print(len(li))#len获取列表对象数据个数
strA='我喜欢python'
print(len(strA))
#查找
listA=['abcd',785,12.23,'qiuzhi',True]
print(listA)
print(listA[0])#输出第一个元素
print(listA[1:3])#输出第二个、第三个元素
print(listA[2:])
print(listA[::-1])#倒叙输出
print(listA*3)#输出3次列表中数据
#尾后追加
listA.append(['fff','ddd'])
listA.append(888)
print(listA)
#插入
listA.insert(1,'这是刚插入的')
print(listA)
#尾后批量添加
rsData=list(range(10))#强制转换为list对象
print(type(rsData))
listA.extend(rsData)
listA.extend(['11',22,33])
print(listA)
#修改
listA[0]='peter'
print(listA)
#删除
listB=list(range(10,20))
del listB[0]
print(listB)
del listB[1:3]#批量删除
print(listB)
listB.remove(18)#移除指定项,参数是数据项
print(listB)
listB.pop(1)#移除指定的项,参数是索引值
print(listB)
print(listB.index(19))#返回一个索引下标

四、元组

特点:是一组不可变的序列;用()创建元组类型,数据项用,分割;可是任意类型;元组只有一个元素时,要加上逗号,不然解释器会当作整形来处理;支持切片

tulpleA=()#空元组
print(type(tulpleA))
tupelA=('abcd',89,9.12,'peter',[11,22,33])
print(id(tupelA))
print(tupelA)
#元组查询
for item in tupelA:
    print(item,end=' ')
print()
print(tupelA[2:4])
print(tupelA[::-1])
print(tupelA[::-2])#表示反转字符串,每隔两个取一次
print(tupelA[::-3])
print(tupelA[-2:-1:])
print(tupelA[-4:-2:])
#tupelA[0]='PythonHello'不能修改
print(type(tupelA[4]))
tupelA[4][0]=2637
print(tupelA)#元组中列表类型数据可修改
tupleB=(1,)
print(type(tupleB))#当元组只有一个数据项时,后面要加逗号
tupleC=tuple(range(10))#类型转换
print(tupleC)
print(tupleC.count(8))#可以统计元素出现次数

五、字典

定义:是键值对组成的集合,通常使用键来访问数据,效率非常高,支持对数据添加、修改、删除

特点:

不是序列类型,没有下标概念,是一种无序键值集合,是高级内置数据类型

用{}来表示字典对象,每个键值用逗号分开

键必须是不可变类型【元组,字符串】值可以任意类型

每个键必须唯一,如果存在重复的键,后者会覆盖前者

dictA={}
print(type(dictA))
dictA={'pro':'艺术','school':'北电'}
#添加字典数据
dictA['name']='李易峰'#key:value
print(dictA)
dictA['age']=30
dictA['pos']='歌手'
print(dictA)
print(len(dictA))#数据项长度
print(dictA['name'])#通过键获取值
dictA['name']='谢霆锋'#修改键对应值
dictA['school']='北大'
print(dictA)
print(dictA.keys())#获取所有键
print(dictA.values())#获取所有值
print(dictA.items())#获取所有键和值
for key,value in dictA.items():
    print('%s==%s'%(key,value))
dictA.update({'age':32})#更新
dictA.update({'height':180})#增加
print(dictA)
#通过指定键删除操作
del dictA['name']
print(dictA)
dictA.pop('age')
print(dictA)
#如何排序
print(sorted(dictA.items(),key=lambda d:d[0]))#按key排序
print(sorted(dictA.items(),key=lambda d:d[1]))#按值排序

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值