python学习记录(七)————字符串

字符串

# 字符串
str1 = '我是研究生'

# 若要在字符串中也输出引号,可使用转义字符
str2 = '我是\'研究生\''

# 单双引号混合使用可避免使用转义字符,例如我需要在字符串中输出单引号,则用双引号来表示字符串范围
str22 = "我是'研究生'"

# 转义字符还有换行符\n 制表符\t
str3 = '我是\n研究生'

# 想输出原始转义字符有两种方式
# 方法一:在转义字符前再加\
str4 = '换行符号是\\n'
# 方法二:在字符串前加r表示原始字符串,不加处理
str5 = r'换行符是\n'

# 三引号可直接实现跨行输入
str6 = '''
这是第一行
这是第二行
'''

1.拼接

str1 = '我是研究生'
str2 = '来自UESTC'

# 拼接方法一
str3 = str1 + str2
print(str3)

# 拼接方法二
str3 = '我是研究生''来自UESTC'

# 拼接方法三
print("第一句话'%s'和第二句话'%s'拼在一起" % (str1, str2))

# 字符串的乘法
print(str1 * 3)

2.切片

# 字符串切片
str1 = 'abcdefghijklmnopqrstuvwxyz'

# 获取对应下标的字符
print(str1[0])
# 下标符号表示倒数,如倒数第一是下标-1
print(str1[-1])

# 获取字符串片段
# str_name[start:stop:step]
# 获取范围为[start, stop)
print(str1[10:20:2])
# step > 0 从左往右;step < 0 从右往左
print(str1[20:10:-2])

# 反转字符串
print(str1[::-1])

3.常用字符串函数

3.1查找计算

str1 = '这是一组字符串数据,这是一组字符串数据'
# 内建函数直接使用,len()
print(len(str1))

'''
使用
    对象.函数()
的格式使用函数,结构更清晰
'''

# 查找子串的下标位置,find(sub, start, end)
# start可省略,默认为0;end可省略,默认为len(str)
# 若字符串中有重复目标则从左往右返回第一个目标的下标
# 若没有目标返回‘-1’
print(str1.find('数据'))
# rfind功能同find,从字符串右向左查找
print(str1.rfind('数据'))
# index功能同find,若没有目标将报错
print(str1.index('数据'))
# rindex功能同rfind,若没有目标将报错
print(str1.rindex('数据'))
# 检索特定字符串的个数,count(sub, start, end)
print(str1.count('数据'))

3.2替换

str1 = 'This Is My Life'
# replace(old, new, count)用新字符串替换就字符串
# count表示需要替换的个数,默认为全部替换
# 返回的是替换后的结果,并不会修改源字符串
print(str1.replace('s', 'q'))
print(str1.replace('s', 'q', 1))
# capitalize(),将整个字符串的首字母大写
str2 = 'zhe shi yi chuan xiao xie de ju zi'
print(len(str2))
print(str2.capitalize())
# title()将字符串中每个单词的首字母大写
# 只要不是字母,都会被当作单词分割符
print(str2.title())
str3 = 'sui bian xie-yichuan%zi?mu'
print(str3.title())
print(str3)
# lower()将字符串的每一个字母都变成小写
print(str1.lower())
# upper()将字符串的每一个字母都变成大写
print(str1.upper())

3.3填充压缩

str1 = 'This'
# ljust(width, fillchar),width表示填充后字符串的长度,剩余空位用fillchar填充
# rjust表示原字符串靠右,ljust表示原字符串靠左
# center表示原字符串居中,空位左右不够均分时,右边多一个
print(str1.ljust(10, 'b'))

# lstrip(chars),chars为一个字符集,默认为空字符
# lstrip移除原字符串中存在在目标字符集中的字符
# 遇到非chars字符集中的字符即停止
# rstrip从右侧开始删除,lstrip从左侧开始删除
str2 = '  zhe shi yiduan hua   '
# 加|表示字符串两侧,便于观察空格是否被删除
print('|' + str2.lstrip() + '|')
print('|' + str2.rstrip() + '|')
# 若chars是一个字符集
str3 = 'wwwwwooooswoowojieshu'
print('|' + str3.lstrip('woab') + '|')
# 输出结果为|swoowojieshu|

3.4分割拼接

str1 = 'This-is-a-apple'
# split(sep, maxsplit), 将一个大的字符串分割成小的字符串,返回列表
# sep表示分割符,maxsplit表示最大分割次数,默认为全部分割
print(str1.split('-'))
# partition(sep),根据分割符,返回元组(分割符左侧内容,分割符,分割符右侧内容)
# rpartition从右往左,partiton从左往右
print(str1.partition('-'))
print(str1.rpartition('-'))
# join(),用给定的字符将括号内的内容进行链接
iterm = ['wo', 'laizi', 'sichuan']
print('-'.join(iterm))

3.5判定

str1 = 'This-is-a-apple'
# isalpha()判断字符串是否都是字母
# isdigit()判断字符串是否都是数字
# isspace()判断字符串是否都是空格、转义字符等不可见字符
# isalnum()判断字符串是否都是字母或者数字
print(str1.isalpha())
# startswith(prefix, start=0, end=len(str))判断一个字符串是否是以某个前缀开头
index = '2023-05-10: 学习报告.xls'
print(index.startswith('2023'))
# endswith(suffix, start=0, end=len(str))判断一个字符串是否是以某个后缀结尾
print(index.endswith('.xls'))

# in/not in 判断某字符是否在字符串里
print('xls' in index)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值