py days07

### 字符串的相关操作

(1)字符串的拼接 +

str1 = “美丽的”
str2 = “大好河山”
res = str1 + str2
print(res)

(2)字符串的重复 *

str = “老八秘制小汉堡”
res = str*3
print(res)

(3)字符串跨行拼接 \

str = “老八秘制小汉堡”
“一人三餐不能少”
print(str)

(4)字符串的索引

str = “老爸秘制小汉堡”
print(str[3])

(5)字符串的切片:(截取)

“”"
语法 => 字符串[::] 完整格式:[开始索引:结束索引:间隔值]
(1)[开始索引:] 从开始索引截取到字符串的最后
(2)[:结束索引] 从开头截取到结束索引之前(结束索引-1)
(3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
(4)[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取字符
(5)[:]或[::] 截取所有字符串
“”"
str = “老八秘制小汉堡,一人三餐不能少”
res =(str[3:]) #制小汉堡,一人三餐不能少
res = (str[:-1]) #老八秘制小汉堡,一人三餐不能
res = (str[3:-1]) #制小汉堡,一人三餐不能
res = (str[3👎2]) #制汉,人餐能
res = (str[::-3]) #少餐一汉秘

print(res)

### 字符串的相关函数

*capitalize 字符串首字母大写

strvar = “how old are you”
res = strvar.capitalize() # How old are you
print(res)

*title 每个单词的首字母大写

res = strvar.title () #How Old Are You
print (res)

*upper 将所有字母变成大写

res = strvar.upper() #HOW OLD ARE YOU
print(res)

*lower 将所有字母变成小写

strvar = “HOW OLD ARE YOU”
res = strvar.lower() #how old are you
print(res)

*swapcase 大小写互换

strvar = “AbC d”
res = strvar.swapcase() #aBc D
print(res)

*len 计算字符串的长度

strvar = “AbC d”
res = len(strvar)
print(res)

*count 统计字符串中某个元素的数量

strvar = “你猜我是不是喜欢你”
res = strvar.count(“喜欢了你”) #0
print(res)

*find 查找某个字符串第一次出现的索引位置

“”“find(字符start,end) end最大值取不到, 取到它之前的那个数 “””
strvar = “oh Father this is my Favorate boy”
res = strvar.find(“a”) #4
res = strvar.find(“Father”) #3
res = strvar.find(“is”,10) #12
res = strvar.find(“is”,9,17) #12
print(res)

*index 与 find 功能相同 find找不到返回-1,index找不到数据直接报错

res = strvar.index(“abc”) # 找不到报错

*startswith 判断是否以某个字符或字符串为开头

‘’‘startswith(字符,start,end)’’’
strvar = “oh Father this is my Favorate boy”
res = strvar.startswith(“oh”) #True
res = strvar.startswith(“oh”,3) #False
print(res)

*endswith 判断是否以某个字符或字符串结尾

res = strvar.endswith(“boy”) #True
res = strvar.endswith(“Favorate”,-12,-4) # True
print(res)

### is 系列函数

strvar = “ABC”

*isupper 判断字符串是否都是大写字母

res = strvar.isupper()
print(res)

*islower 判断字符串是否都是小写字母

res = strvar.islower()
print(res)

*isdecimal 检测字符串是否以数字组成 必须是纯数字

strvar = “1234123”
res = strvar.isdecimal()
print(res)

### split join strip replace 重点记忆

split 按某字符将字符串分割成列表(默认字符是空格)

strvar = “youcan you up no can no bb” #[‘youcan’, ‘you’, ‘up’, ‘no’, ‘can’, ‘no’, ‘bb’]
lst = strvar.split()
strvar = “you-can-you-up-no-can-no-bb”
lst = strvar.split("-",4) #[‘you’, ‘can’, ‘you’, ‘up’, ‘no-can-no-bb’]
lst = strvar.rsplit("-",2) #[‘you-can-you-up-no-can’, ‘no’, ‘bb’]
print(lst)

***join 按某字符将列表拼接成字符串(容器类型都可)

lst = [‘you’, ‘can’, ‘you’, ‘up’, ‘no’, ‘can’, ‘no’, ‘bb’]
strvar = “@”.join(lst)
print(strvar)

*center 填充字符串,原字符居中 (默认填充空格)

“”" 默认填充空格的长度 + 原字符串的长度 = 10"""
strvar = “王瑛乾”
res = strvar.center(7) # 王瑛乾
res = strvar.center(7,“帅”) #帅帅王瑛乾帅帅
print(res)

*strip 默认去掉首尾两边的空白符

strvar = " xboyww "
print(strvar)
res = strvar.strip()
print(res)

strvar = “@@@xboyww@”
res= strvar.strip("@")
print(res)

*replace() 把字符串的旧字符换成新字符

strvar = “可爱的小狼狗喜欢吃肉,有没有,有没有,还有没有”
res = strvar.replace(“有没有”,“真没有”) #可爱的小狼狗喜欢吃肉,真没有,真没有,还真没有
res = strvar.replace(“有没有”,“真没有”,1) #可爱的小狼狗喜欢吃肉,真没有,有没有,还有没有

print(res)

替换掉字符串所有的空格

strvar = “a b c”
res = strvar.replace(" “,”")
print(res)

### format 格式化字符串

“”"
(1)顺序传参
(2)索引传参
(3)关键字传参
(4)容器类型数据(列表或元祖)传参

{} 代表占位符
“”"

(1)顺序传参

strvar = “{}秘制小汉堡,{}三餐不能少”
res = strvar.format(“老八”,“一日”) #老八秘制小汉堡,一日三餐不能少
print(res)

(2)索引传参

strvar = “{1}秘制小汉堡,{0}三餐不能少”
res = strvar.format(“老八”,“一日”) #一日秘制小汉堡,老八三餐不能少
print(res)

(3)关键字传参

strvar = “{who2}向{who1}发起猛攻,进行扫射,嘴里大喊: 丫子给给~”
res = strvar.format(who1=“王瑛乾”,who2=“杨浩”)
print(res)

(4)容器类型数据(列表或元组)传参

strvar = “{0[0]}向{1[1]}抛了一个眉眼,鼻血直冒三万多尺,喷血而亡.”
res = strvar.format([“徐月”,“宋悦”],[“王瑛乾”,“杨浩”])
print(res)

strvar = “{woman[1]}向{man[1]}抛了一个眉眼,鼻血直冒三万多尺,喷血而亡.”
res = strvar.format( woman = [“徐月”,“宋悦”] , man = (“杨浩”,“王瑛乾”))
print(res)

方法三 (字典 在format当中,不要加上引号)

strvar = “{woman[sm]}向{man[0]}抛了一个眉眼,鼻血直冒三万多尺,喷血而亡.”
res = strvar.format( woman = {“cr”:“陈芮”,“sm”:“刘思敏”} , man = (“黄俊”,“朱佳怡”))
print(res)

### (5)format的填充符号的使用( ^ > < )

“”"
^ 原字符串居中

原字符串居右
< 原字符串居左

{who:!<10}
who : 关键字
! : 要填充的字符
< : 填充的方向,原字符串居左
10 : 字符串的总长度10
总长度10 = 原字符串长度 + 填充字符的长度
“”"

strvar = “{who:你^10}在长春长生公司{do:@>10},感觉{feel:!<10}”
res = strvar.format(who=“魏富强”,do=“扎疫苗”,feel=“血巢被掏空”)
print(res)

### (6)进制转换等特殊符号的使用( :d :f 😒 :, )

:d 整型占位符 (要求必须是整型)

‘’’
strvar = “{:d}月{:d}号,是母亲节”
res = strvar.format(5,10) #5月10号,是母亲节
print(res)
‘’’

:2d 占用2位,原字符串居右

:2d 占用2位,原字符串居右

strvar = “母亲节,给自己的老妈,买了{:3d}个康乃馨”
res = strvar.format(1)
print(res)

strvar = “母亲节,给自己的老妈,买了{:<3d}个康乃馨”
res = strvar.format(1)
print(res)

strvar = “母亲节,给自己的老妈,买了{:^3d}个康乃馨”
res = strvar.format(1)
print(res)

‘’’
母亲节,给自己的老妈,买了 1个康乃馨
母亲节,给自己的老妈,买了1 个康乃馨
母亲节,给自己的老妈,买了 1 个康乃馨
‘’’

:f 浮点型占位符 (要求必须是浮点型)

strvar = “买花一共花了{:f}元”
res = strvar.format(9.9)
print(res)

:.2f 保留二位小数,存在四舍五入的情况

strvar = “王振开工资了,一个月{:.2f}元”
res = strvar.format(98.319)
print(res)

:f 浮点型占位符 (要求必须是浮点型)

strvar = “买花一共花了{:f}元”
res = strvar.format(9.9)
print(res)

:.2f 保留二位小数,存在四舍五入的情况

strvar = “王振开工资了,一个月{:.2f}元”
res = strvar.format(98.319)
print(res)

😒 字符串占位符 (要求必须是字符串)

strvar = “{😒}”
res = strvar.format(“中国疫情正在渐渐的变好,但是美国的疫情一天不如一天”)
print(res)

:, 金钱占位符

strvar = “{:,}”
res = strvar.format(123456789)
print(res)

综合案例

strvar = “{😒}看好了一辆兰博基尼,价格是{:.1f}元,打算买{:d}个”
res = strvar.format(“杨浩”,9.9,10)
print(res)

### 列表相关操作

一.列表的拼接 (同元组) +

lst1 = [1,2]
lst2 = [3,4]
lst = lst1 + lst2
print(lst)

二.列表的重复 (同元组) *

lst1 = [1,2]
lst = lst1 * 3
print(lst)

三.列表的切片 (同元组)

“”"
语法 => 列表[::] 完整格式:[开始索引:结束索引:间隔值]
(1)[开始索引:] 从开始索引截取到列表的最后
(2)[:结束索引] 从开头截取到结束索引之前(结束索引-1)
(3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
(4)[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取列表元素值
(5)[:]或[::] 截取所有列表
“”"
lst = [“王瑛乾”,“朱佳怡”,“云超”,“主胜”,“刘敏”,“王振”,“杨浩”]
res = lst[::]
res = lst[2:]
res = lst[:2]
res = lst[3:5]
res = lst[1:5:2]
res = lst[::5]
res = lst[::-1] #[‘杨浩’, ‘王振’, ‘刘敏’, ‘主胜’, ‘云超’, ‘朱佳怡’, ‘王瑛乾’]
print (res)

四.列表的获取 ( 同元组 ) ***

0 1 2

lst = [“a”,“b”,“c”]

-3 -2 -1

print(lst[0])

五.列表的修改 ( 可切片 ) ***

lst[0] = “ddd”
print(lst)

“”“赋值时,修改的数据要求是: >可迭代性的数据< iterable “””

利用切片进行修改(切一段,放进去所有值)

lst = [“金刚葫芦娃”,“千里眼”,“三娃”,“火娃”,“水娃”,“六娃”,“隐身娃”]
lst[0:2] = [“大娃”,“二娃”]
print(lst)
lst[::2] = [“大娃”,“金刚不坏”,“会喷水”,“七娃”]
print(lst)
del lst[2:4]
print (lst)

注意点: res是变量 del 删除的是res 不是列表

lst = [“猪八戒”,“唐僧”,“孙悟空”,“沙僧”,“白龙马”]
res = lst[1:4]
del res
print(lst)
“”"
地址:
[“猪八戒”,“唐僧”,“孙悟空”,“沙僧”,“白龙马”] => 0x101
[“唐僧”,“孙悟空”,“沙僧”] => 0x100
“”"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值