day03 python数据操作方法

本文详细介绍了Python中字符串、列表、元组和字典的基本操作,包括常用的成员方法和特性。例如,字符串的首字母转换、查找、切片等;列表的增删改查、排序;元组的不可变性及其应用;以及字典的键值对操作和更新等。这些基础知识对于Python编程至关重要。

字符串

序列:一组按照顺序排列的值(其实就是集合)
序列的优点:可以支持索引和切片操作
序列的特征:第一个正索引为0,指向左端,负数指向右端
切片:可以根据下标来获取序列对象的任意数据(提取操作)
语法结构:[start🔚step] step默认1
常用字符串以及使用方法:
1.capitalize() 首字母变大写
2.endswith/startswith() 是否结束/开始
3.find() 检测
是否在字符串中
4.islnum() 判断是否是字母和数字
5.isalpha() 判断是否是字母
6.isdigit() 判断是否是数字
7.islower() 判断是否是小写
8.join() 循环取出所有值用**去连接
9.lower/upper 大小写转换
10.swapcase 大写变小写。小写变大写
11.lstrip/rstrip/strip 移除左/右/两侧空白
12.split() 切割字符串
13.title() 把每个单词的首字母变成大写
14.replace(old,new,count=None) old被换成字符串,new替换字符串,count换多少个,如果没有count则表示全部替换
15.count() 统计出现的次数
下面展示一些 内联代码片

Test='python'
print(type(Test))
print('第一个字符%s'%Test[0])
print('第二个字符%s'%Test[1])
for item in Test:
    print(item,end=' ')

name='liming'
print('姓名首字母大写%s'%name.capitalize())            #capitalize()首字母大写操作

a='    hello    world'
b=a.strip()
print(b)     #去除字符串中间的空格
print(a.lstrip())    #删除左边空格
print(a.rstrip())    #删除右边空格

dataStr='hellO lixiaoming'
dataStr.find('p')
print(dataStr.find('l'))   #查找对象在序列对象中的位置,没找到就返回-1
print(dataStr.index('h'))   #检测字符串中是否包含子字符串,同样返回下标,找不到报错
print(dataStr.startswith('e'))  #判断是否是开头
print(dataStr.endswith('e'))    #判断是否是结尾
print(dataStr.lower())    #小写转换
print(dataStr.upper())    #大写转换

strMsg='hello world'
slice [start:end:step]    #切片操作.左闭右开
print(strMsg) #输出完整数据
print(strMsg[0])  #输出某个数据
print(strMsg[2:5])  #第三个数据到第五个数据之间,包含第三个但是不包含第五个
print(strMsg[2:])   #第三个数据到最后
print(strMsg[0:3])  #一到三,0可以省略
print(strMsg[::-1])     #倒叙输出

列表

list:python中的数据结构,一种有序的数据组合
特点:
1.支持增删改查
2.列表中的数据可以变化,但是内存地址不会改变
3.用[]表示列表类型,数据之间用逗号分割,数据类型不限制
4.支持索引和切片
列表常用方法:
append:在列表后追加元素
count:统计元素出现的次数
entend:批量添加元素
index:获取指定元素索引号
insert:在指定位置插入
pop:删除最后一个元素
remove:移除左边找到的第一个元素
reverse:反转列表
sort:列表排序

li=[]   #空列表
li=[1,2,3,'你好']
print(len(li))  #len函数获取列表中数据个数
strA='我是李小明'
print(len(strA))
print(type(li))

# 查找列表数据
listA=['abcd',789,12.23,'liming',True]
print(listA)    #输出完整列表
print(listA[0]) #输出第一个元素
print(listA[1:3])   #从第二个开始到第三个元素
print(listA[2:])    #从第三个元素开始到最后一个元素
print(listA[::-1])  #倒序输出
print(listA*2)      #数据获取两次
print('----------增加数据-------------')
listA.append(['fff','ddd']) #追加数据
print(listA)
listA.insert(1,'插入数据')  #指定位置插入数据
print(listA)
rsData=list(range(10))  #强制转换为list对象
listA.extend(rsData)    #插入整个列表
print(listA)
print('----------修改数据-------------')
print('修改之前',listA)
listA[0]=333.6
print('修改之后',listA)
print('----------删除数据-------------')
listB=list(range(10,50))
print(listB)
del listB[0]    #del删除第一个数据
print(listB)
del listB[1:3]  #删除第二到第三个数据,批量删除
print(listB)
listB.remove(20)    #移除指定元素,具体数据值
print(listB)
listB.pop(0)    #移除指定数据,索引值
print(listB)
print(listB.index(19))  #返回的是索引下标

元组

元组:是一种不可变序列,创建之后不可修改
特点:
1.不可变
2.用()创建元组类型,数据项用逗号分隔
3.可以是任何类型
4.当元组中只有一个元素时要加逗号,否则解释器将当作整形处理
5.支持下标操作,切片操作

tupleA=()   #创建一个空元组
tupleA=('abcd',89,3.14,[11,22,33])  #当元组中只有一个数据项时必须在后面加逗号,否则不是元组类型
print(tupleA)
for item in tupleA:
    print(item,end=' ')
print(tupleA[1:4])
print(tupleA[::-1])
print(tupleA[::-2])     #反转字符串并且每隔两个取一个
print(tupleA[-2:-1:])   #倒着取倒数第二个数

tupleB=(1,2,3,3,3,4,4,5)
print(tupleB.count(3))

字典

字典:可以任意存储对象,字典是以键值对的形式创建{‘key:‘value’’}利用大括号包裹
注意:
1.字典的键(key)不能重复,值(value)可以重复
2.字典的键(key)只能是不可变类型,如数字,字符串,元组
字典支持添加,修改,删除操作
特点:1.不是序列类型,没有下标,不能用索引,是一个无序的键值集合,内置的高级类型
2.用{}表示字典对象,每个键值对用逗号分隔
3.键必须是不可变的类型,可以是元组,字符串,值可以是任意类型
4.每个键必定是唯一的,当存在重复的键,后者会覆盖前者

dictA={'111':'222','333':'444'}     #创建空字典
dictA['name']='lixiaoming'    #[]中代表key,=右边代表value
dictA['age']="8"
dictA['job']='小学生'
print(dictA)
print(len(dictA))
print(dictA['name'])    #通过键获取对应的值
#若要修改直接覆盖即可
print(dictA.keys())     #获取所有的键
print(dictA.values())   #获取所有的值
print(dictA.items())    #获取所有的键值对
for item in dictA.items():
    print(item)         #for循环获取所有的键和值
for key,value in dictA.items():
    print('%s==%s'%(key,value))     #for循环获取所有的键和值
dictA.update({'age':32})    #另一个修改操作
dictA.update({'school':'家里蹲'})  #没有修改项则添加
print(dictA)
del dictA['name']   #删除操作
# dictA.pop('age')
# print(dictA)
print(sorted(dictA.items(),key=lambda d:d[0]))  #按照key排序
print(sorted(dictA.items(),key=lambda d:d[1]))  #按照value排序

公用方法

in:判断是否存在
+:合并操作
*:复制操作

strA='我是李小明'
strB='三年二班'
print(strA+strB)    #"+"合并操作,同样适用于列表和元组
listA=list(range(10))
listB=list(range(11,20))
print(listA+listB)
print(strA*3)       #"*"复制操作
print(listA*4)
print('生'in strA)   #"in"判断是否存在,结果是一个bool类型数据
print(22 in listA)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值