Python - 字符串的应用

字符串格式化问题

使用规则举例:

name = input("请输入你的名字:")

address = input("请输入你的住址:")

age = int(input("请输入你的年龄:"))

hobby = input("请输入你的爱好:")

# %s  字符串占位

# %d  整数占位

s = "我叫%s,我住在%s,我今年%d,我喜欢%s" % (name,address,age,hobby)

s1 = "我叫{},我住在{},我今年{},我喜欢{} " .format(name,address,age,hobby)

s2 = f"我叫{name},我住在{address},我今年{age},我喜欢{hobby}"        #f-string

print(s2)

字符串的索引和切片

索引:按照位置提取元素。

#字符串中可以采用索引的方式来提取某一个字符(文字)

print(s[3])           表示字符串的第四个元素,因为程序员都是从0还是计数

print(s[-1])          表示字符串的倒数第一个字符

切片:从一个字符串中提取一部分内容。

print(s[3:6])        #从下标为3的位置进行切片,切到6结束(不包含6位置)。

#语法:s[start:end]         从start到end进行切片,但是取不到end。

print(s[0:5])

print(s[:5])        #如果start从开头进行切片,可以省略不写。

print(s[ : ])        #左右都省略,从头且到尾。

print(s[-3:-1])        目前(步长默认1)只能从左向右切,所以print(s[-1:-3])是不可行的。

#我们还可以给切片添加步长来控制切片的方向

print(s[0:8:1])        #表示从左向右,切片一次走一步

print(s[0:8:-1])       #表示从右往左,切片一次走一步

#语法:s[start:end:step]        从start切到end,每step个元素切一个元素。

字符串常规操作

#字符串的操作一般不会对原字符串产生影响,一般是返回一个新的字符串

1、字符串大小写转换

s = "python"

s1 = s.capitalize() 

print(s1)

s1 = s.title()        #字符串中单词的首字母大写字母

s1 = s.upper()        #把所有的变成大写字母

s1 = s.lower()        #变成小写字母

#如何忽略大小写去判断

例:

verify_code = "xAd1"

user_input = input(f"请输入验证码({verify_code}):")

if verify_code.upper() == user_input.upper():

        print("验证码正确")

else:

        print("验证码不正确")

 字符串的切割和替换(*)

#字符串切割

s = "     你好       ,     我叫       陈冠希 "

s1 = s.strip()        #切除字符串左右两端的空白字符(空格 \t  \n等)

print(s1)

#split(用什么切割填什么)           

 #属于字符串切割,会将所填括号内容的两侧分成不同字符串,用什么切就会损失掉谁

#字符串替换        str.replace(old,new)

s =  "你好,我叫陈冠希"

s1 = s.replace("陈冠希","吴彦祖")

print(s1)

特殊用法

a = "hello  my  name  is  chen guan xi"

a1 = a.replace(" ","")        #去掉所有空格

print(a1)

 字符串的查找和替换

#查找

s = "我的名字叫陈冠希"

ret = s.find("陈冠希")

print(ret) //结果为5

#find的功能是查找是否存在子串,且存在会返回子串的首元素下标,不存在会返回-1.

ret = s.index("陈冠希")

print(ret) //结果为5

#index的功能是查找是否存在子串,且存在会返回子串的首元素下标,不存在会报错

还有一种判断是否存在子串的方法:

结果都为False

#判断

str.startswith("陈")        #判断字符串的首元素是否是陈,是为True,否则False.

str.endswith("陈")        #判断字符串的尾元素是否是陈,是为True,否则False.

str.isdigit():                  #判断字符串是否由整数组成

str.isdecimal():            #判断字符串是否由小数组成

补充和总结

 s = "hello"

print(len(s))        #len用来计算字符串长度

lst = ['a','b','c','d']

#用_把上面的人的名字连起来

s = "_".join(lst)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值