Python字符串

本文详细介绍了Python字符串的驻留机制、常用操作,包括查询、大小写转换、对齐、劈分、判断、替换和合并。还讨论了字符串的比较、切片、格式化,以及编码和解码转换。对于编程实践,了解这些概念和方法至关重要。
摘要由CSDN通过智能技术生成

目录

一、字符串的驻留机制

二、字符串的常用操作

查询

大小写转换

对齐

劈分

判断

替换

合并

三、字符串的比较操作

四、字符串的切片操作

五、格式化字符串

4.1 格式化内容

4.2 格式化宽度和精度

六、字符串的编码转换


字符串是不可变序列

一、字符串的驻留机制

以后再补:)

二、字符串的常用操作

功能方法作用说明

查询

.index()查找子串 substr 第一次出现的位置若查找子串不存在,抛出ValueError
.rindex()查找子串 substr 最后一次出现的位置若查找子串不存在,抛出ValueError
.find()查找子串 substr 第一次出现的位置若查找子串不存在,返回 -1
.rfind()查找子串 substr 最后一次出现的位置若查找子串不存在,返回 -1
功能方法作用说明

大小写转换

.upper()把字符串中所有字符转换成大写字母返回转换后的字符串,原字符串不发生变化
.lower()把字符串中所有字符转换成小写字母
.swapcase()把所有大写字母转换成小写字母,所有小写字母转换成大写字母
.capitalize()把第一个字符转换为大写,其余字符转换为小写
.title()把每个单词的第一个字符转换为大写,其余字符转换为小写
功能方法作用说明

对齐

.center()居中对齐,第1个参数指定宽度,第2个参数指定填充符若设置宽度小于实际宽度则返回原字符串,默认空格填充
.ljust()向左对齐,第1个参数指定宽度,第2个参数指定填充符若设置宽度小于实际宽度则返回原字符串,默认空格填充
.rjust()向右对齐,第1个参数指定宽度,第2个参数指定填充符若设置宽度小于实际宽度则返回原字符串,默认空格填充
.zfill()向右对其,左边用0填充,参数指定宽度,若设置宽度小于实际宽度则返回原字符串
功能方法作用说明

劈分

.split()从字符串左边开始劈分,返回值为一个列表
通过参数sep指定劈分字符串的分隔符默认分隔符为空格字符串
通过参数maxsplit指定劈分字符串时的最大次数,最大劈分次数后的剩余字串单独作为一部分
.rsplit()从字符串右边开始劈分,返回值为一个列表
通过参数sep指定劈分字符串的分隔符默认分隔符为空格字符串
通过参数maxsplit指定劈分字符串时的最大次数,最大劈分次数后的剩余字串单独作为一部分
功能方法作用说明

判断

.isidentifier()判断指定字符串是否为合法标识符由字母、数字、下划线组成,且开头不为数字
.isspace()判断指定字符串是否全部由空白字符组成如回车、换行、水平制表符等
.isalpha()判断指定字符串是否全部由字母组成汉字也作字母
.isdecimal()判断指定字符串是否全部由十进制数字组成只认阿拉伯数字
.isnumeric()判断指定字符串是否全部由数字组成中文数字、罗马数字也作数字
.isalnum()判断指定字符串是否全部由字母和数字组成
功能方法作用说明

替换

.replace()返回替换后得到的字符串,原字符串不发生变化
第1个参数指定被替换的子串,第2个参数指定替换子串的字符串,第3个参数指定最大替换次数

合并

.join()将列表或元组中的字符串合并成一个字符串

三、字符串的比较操作

  • 运算符:>,<,>=,<=,==,!=
  • 比较规则:首先比较两个字符串中的第一个字符,如果相等则继续比较下一个字符,依次比较下去,直到两个字符串中又字符不相等时,其比较结果就是两个字符串的比较结果,剩下的所有字符将不再被比较
  • 比较原理:字符Unicode编码值的比较
    • ord():得到指定字符的Unicode编码
    • chr():得到指定Unicode编码对应的字符

四、字符串的切片操作

substr=str[start:stop:step]

五、格式化字符串

4.1 格式化内容

  • % 作占位符
    • %s:字符串
    • %d:整数
    • %f:浮点数
name='小王'
age=1
print('我的姓名:%s,我的年龄:%d岁,大家都叫我:%s' % (name,age,name))

运行结果

  •  { } 作占位符 
name='小王'
age=1

'''(1){index}'''
print('我的姓名:{0},我的年龄:{1}岁,大家都叫我:{0}'.format(name,age))

'''(2){元素}'''
print(f'我的姓名:{name},我的年龄:{age}岁,大家都叫我:{name}')  # f表示格式化string(python3.0以上才能用)

运行结果

4.2 格式化宽度和精度

  • % 作占位符
    • %ad 表示宽度=a
    • %.bf 表示精度=b
    • %a.bf 同时表示宽度=a和精度=b
  • { } 作占位符
    • {index:a} 表示宽度=a
    • {index:.b} 表示有效数字=b
    • {index:.bf} 表示精度=b
    • {index:a.bf} 同时表示宽度=a和精度=b

六、字符串的编码转换

  • 编码:将字符串转换为二进制数据(bytes)
    • .encode()        通过参数encoding指定编码格式
  • 解码:将bytes类型的数据转换为字符串类型
    • .decode()        通过参数encoding指定编码格式
s='我叫小王,哈哈哈!'

'''编码'''
print('GBK格式编码:',s.encode(encoding='GBK'))  # 在GBK编码格式中,一个中文占2个字节
print('UTF-8格式编码:',s.encode(encoding='UTF-8'))  # 在UTF-8编码格式中,一个中文占3个字节

'''解码'''
byte=s.encode(encoding='GBK')   # byte 代表一个二进制数据(或字节类型的数据)
print('GBK格式解码:',byte.decode(encoding='GBK'))
byte=s.encode(encoding='UTF-8')
print('GBK格式解码:',byte.decode(encoding='UTF-8'))

运行结果


Flag:我要成为一个日更选手:)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值