字符串的理解

本文详细介绍了Python中字符串的基本操作,包括创建、拼接、截取、运算等,并举例演示了如format函数、成员运算符、查找、替换、分割等方法的使用。同时,讲解了字符串的大小写转换、去除空白字符以及相关的属性和方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Python中用单引号,或双引号括起来的内容就是字符串。以下几种均为字符串

"柠栀是全宇宙最帅的男人"
'柠栀是全宇宙最帅的男人'
'244245'
"True"
'hello word'

字符串的方法比较多,大家要多敲多练习

字符串的构造

字符串可以直接拼接,同样可以使用format函数或者%符号构造,之前我们已经讲解过

age = 18
name = '柠栀'

方法一:
print("{}今年{}岁".format(name,age))

方法二:
print("%s今年%d岁"%(name,age))

方法三:
text = "yes"
name = "柠栀呀"
text.join(name) # 柠yes栀yes呀    # join()拼接   以……拼接……

方法四:
print(f'{name}今年{age}岁')

字符串的截取(重点)

字符串中的每一个字符都有一个默认的索引值,从左到右默认重0开始,依次递增;从右往左默认重-1开始,依次递增;

sure = "不是在最美好的时光遇见你,而是遇见你以后都是最美好的时光"
print(len(sure))  # 内置函数 len() 获取字符串长度
print(sure)       # 打印字符串
print(sure[2])    # 获取字符串中的第三个字符
print(sure[0:2])  # 截取字符串索引值为0~1的字符,不包括索引值为2的字符
print(sure[2:5])  # 截取字符串索引值为2~4的字符,不包括索引值为5的字符
print(sure[2:-1]) # 截取字符串重索引值为2开始直到字符串结尾的前一个,-1的索引值表示最后一个
print(sure[2:len(sure)]) # 截取字符串重索引值为2开始直到字符串结尾
print(sure[:4])   # 截取在列表中索引值为0-4的数据,冒号前面不设置参数,默认从0开始,注意截取并不包括4
print(sure[2:])   # 截取在列表中索引值为2-末尾的数据,冒号后面不设置参数,默认截取到最后一位数据,注意截取包括最后一位
print(sure[::-1]) # 从后往前截取所有内容,-1为步长
print(sure[290])  # 下标越界

"""
输出内容:

28
不是在最美好的时光遇见你,而是遇见你以后都是最美好的时光
在
不是
在最美
在最美好的时光遇见你,而是遇见你以后都是最美好的时
在最美好的时光遇见你,而是遇见你以后都是最美好的时光
不是在最
在最美好的时光遇见你,而是遇见你以后都是最美好的时光
光时的好美最是都后以你见遇是而,你见遇光时的好美最在是不
IndexError: string index out of range
"""

字符串的运算

在成员运算符中,我们介绍了in 与 not in ,主要的作用就是用于检测字符串中是否存在某个字符或字符串,如果存在则返回True,不存在则返回False。

# 定义字符串
myStr = "my shenti is rere, my Koudai is kongkong"

print("is" in myStr)     # True
print("is" not in myStr) # False

上面只是判断存不存在,如何在字符串中查找某一个字符或字符串出现的次数,位置,是否某特定字符以及字符串开头,字符串是否为纯数字、字母、包含特殊符号呢?

myStr = "my shenti is Rerere,\n my Koudai ,is kongkong"
myStr.find("is")   # 从myStr中查找is,默认从左往右查找,如果找到返回第一次出现的下标,如果不存在返回 -1
myStr.rfind("is")  # 从myStr中查找is,右往左查找,如果找到返回第一次出现的下标,如果不存在返回 -1
myStr.index("is")  # 从myStr中查找is的下标,默认从左往右,如果找到返回第一次出现的下标,如果找不到就报错
myStr.rindex("is") # 从myStr中查找is的下标,右往左查找,如果找到返回第一次出现的下标,如果找不到就报错
myStr.count("is")  # 从myStr中统计is出现的个数,如果存在返回个数,如果不存在返回0

myStr.startswith("hello")  # 判断myStr是否以hello开头
myStr.endswith("kongkong") # 判断myStr是否以kongkong结束

# ------- 以下都不是重点

"fdasf".isalpha()   # 判断是否是纯字母
"23232".isdigit()   # 判断是否是纯数字
"fdaf 13".isalnum() # 判断是否含有特殊字符

myStr.rjust(50)  # 将myStr字符串在50长度的空间向右看齐
myStr.ljust(50)  # 将myStr字符串在50长度的空间向左看齐
myStr.center(50) # 将myStr字符串在50长度的空间居中显示

字符串的替换和分割

 myStr = "my shenti is Rerere,\n my Koudai ,is kongkong"
 myStr.replace("is", "IS") # 将myStr中所有的is替换成IS,对原来的数据不会产生改变
 myStr.split(",")          # 将myStr按照","号进行切割成若干个部分
 myStr.splitlines()        # 将text按照换行符进行切割
 
 name = " 我 的 小 宝 贝 我 的 小 宝 贝1 我 的 小 宝 贝2"
 name.partition("小")  # 将字符串name按照默认从左往右出现的第一个"小"分割成若干部分,小没有删除
 name.rpartition("小") # 将字符串name按照从右往左出现的第一个"小"分割成若干部分,小没有删除

 name.lstrip() # 去除字符串name左边的空格
 name.rstrip() # 去除字符串name右边的空格
 name.strip()  # 去除字符串两边的空格

字符串的大小写

myStr = "my shenti is Rerere,\n my Koudai ,is kongkong"
myStr.capitalize() # 将字符串myStr的首字母大写
myStr.title()      # 将字符串的每一个单词的首字母大写
myStr.lower()      # 将字符串统一转化成小写字母
myStr.upper()      # 将字符串统一转化成大写字母
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值