Python序列类型-字符串

什么是字符串

字符串是由'"包裹起来的任意文本,按照其他语言的习惯推荐使用"。单引号可以在文本本身包括双引号的时候使用,例如:
print('吉多.范罗苏姆外号“龟叔”')

字符串切片

字符串作为序列类型,可以截取序列中任意长度的子串,当然索引也是从0开始。语法: 序列[开始:结束:步长]
在这里插入图片描述

s = "Hello World!"
s[0] #H
s[0:4:2] #第1位开始,第5位结束,步长为2,Hlo
s[6:] #截取并包含第7位及后所有,World
s[:4] #截取第5位但不包含及前所有,Hell
s[-1] #最后一个,!
s[-2:] #倒数第二个及以后,d!
s[:] #所有字符Hello World!
s[::-1] #步长为-1表示倒序取值,!dlroW olleH

字符串索引需要注意的是:

  • 索引值从0计数
  • 步长为正值的时候,向右边切
  • 步长为负值的时候,向左边切(实现逆序)
  • [0:5]并不包含索引5的字符

字符串方法

字符串同列表一样具有很多方法,并且功能更加多样,在python控制台输入str.tab键可以查看支持的所有类型。
在这里插入图片描述
按照不同的功能划分主要包括:

1.判断类型

判断类型的标志是包含is,结果返回True/False,例如

'a'.islower() #True
''.isspace() #判断空白,Fasle
'\n\r\t'.isspace() #True
'123'.isdecimal() #判断纯数字,不包括小数
'12.3'.isdigit() #支持unicode编码的特殊数字,例如\u00b2的平方
'\u00b2'.isdigit()
'九百九十九'.isnumeric() #支持中文数字,范围更广
# 从isnumeric到isdecimal要求更严格,在编程时推荐使用isdecimal确保代码的严谨性

在这里插入图片描述

2.大小写转换

upper:转换大写字母
lowwer:转换小写字母
capitalize:首字母大写

在这里插入图片描述

3.查找替换

find:查找子串位置,若存在则返回索引位置,不存在返回-1
index:查找子串位置,若存在则返回索引位置,不存在则报错
replace:用新字符串替换旧字符串,原字符串不会改变
在这里插入图片描述

4.去除空白

strip去除两端的空白,默认包括所有空白字符(\n,\t,\r和空格)
rstrip去除右侧的空白
lstrip去除左侧的空白
在这里插入图片描述

5.拆分/连接

split: 按照分隔符切成列表
join: 指定连接符连接列表
在这里插入图片描述
注意的是join的使用习惯与其他方法不太一样,是将列表作为参数,而不是连接符

6.文本对齐

center:文本居中
ljust:左对齐
rjust:右对齐

poem = ['静夜思','李白','		床前明月光','疑是地上霜',' 举头望明月','低头思故乡 ']
for line in poem:              
	print('|%s|' % line)
# 使用center居中
for line in poem:              
	print('|%s|' % line.center(10)) #居中并指定10个字符宽度
# 虽然居中了,但是由于前后有空白字符,并不好看,此时可以结合strip输出
for line in poem:              
	print('|%s|' % line.strip().center(10,' ')) #居中并指定10个字符宽度

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值