python学习_day8
2021-06-28 本文已影响0人
宗肃書
高级数据类型
序列:在python中,序列就是一组按照顺序排列的值【数据集合】
在python中存在三种内置的序列类型:字符串、列表、元组
优点:可以支持索引和切片的操作
特征:第一个正索引为0,指向的是左端,第一个索引为负数的时候,指向的是右端
切片是指截取字符串中的一段内容
切片:【高级特征】可以根据下标来获取序列对象的任意【部分】数据
语法结构:[start:end:step] step默认是1
- 练习
test='python'
# print(type(test))
# print('获取第一个字符%s'%test[1:2])
# for it in test:
# print(it,end='\n')
name='petwr'
print('姓名首字母转换为大写%s'%name.capitalize()) #capitalize 首字母变大写
a=' jello '
b=a.strip() #去除字符串的空格
print(b)
print(a.lstrip()) #删除左边的空格
print(a.rstrip()) #删除右边的空格
print('a的内存地址%d'%id(a)) #id 函数 可以查看一个对象的内存地址
b=a
print('b的内存地址%d'%id(b))
da='i love py'
print(da.find('p')) #可以查找目标对象在序列中的下标
print(da.find('o')) #可以查找目标对象在序列中的下标,如果没找到就返回-1
print(da.index('o')) #也可以检测字符串中是否包含子字符串,返回的是下标值。如果没找到就会报错
print(da.lower()) #转换成小写
print(da.upper()) #转换成大写
strM='hello world'
print(strM) #输出完整的数据
print(strM[0])
print(strM[2:4]) #规则,左闭右开只能取到左边开始和右边数据之间的下标对应的数据
print(strM[2:]) #取第三个字符到最后
- 字典
#如何创建字典
# dictA={} #空字典
dictA={"PRO":'艺术',"age":'28'} #初始化的字典数据,a:b 键值对
dictA['NAME']='李易峰' #添加的字典数据
print(dictA) #输出完整的字典
print(dictA['NAME'])
print(len(dictA)) #数据项长度
dictA['NAME']='谢霆锋' #修改键对应的值
# print(type(dictA))
print(dictA.keys()) #获取所有的键
print(dictA.values()) #获取所有的值
print(dictA.items()) #获取所有的键和值
for it in dictA.items():
print(it)
pass
for key,value in dictA.items():
print('%s==%s'%(key,value))
pass
dictA.update({'age':32}) #可以添加或者更新
print(dictA)
#删除操作
del dictA['NAME'] #通过指定键进行删除
dictA.pop('age') #通过指定键进行删除
print(dictA)
#如何对字典进行排序
sorted(dictA.items(),key=lambda d:d[0]) #按照key值排序
- 列表
li=[] #空列表
print(type(li))
li=[1,12,3,4,"你好"]
print(len(li)) #len函数可以获取列表中的字符串个数
strA='我喜欢python'
print(len(strA))
print('----------------增加----------------')
listA=['ABC',1,1.2,'QIU',True]
listA.append([1,2]) #追加列表
print('追加之后',listA)
listA.append(1) #追加数据
print('追加之后',listA)
listq=list(range(10)) #强制转换成list对象
listA.append(listq) #拓展,等于批量添加
print(listA)
print('----------------修改-----------------')
print('修改之前',listA)
listA[0]=333.6
print('修改之后',listA)