字符串是最常用的知识点,但一般常用的方法也就那么几个,这里列出的分为常用的一下方法和不太常用的一些方法。
具体情况要看自己的使用情况,不同的人使用频度可能不一样,具体看自己怎么理解
基本说明
目前已知的 python3 标示字符串的方法有如下几种:
1. 单引号 '
2. 双引号 "
3. 三引号 ''' 或 """
4. 带前缀 r 或 R
5. 带前缀 f 或 F (3.7+)
1 和 2 单双引号的区别目前还不太清楚,感觉基本没有区别,
不过 python 支持混合使用,但是开始和结束必须保持一致。例如:
'测试字符串','混合 "双引号" 字符串',"混合 '单引号' 字符串"
3 和 4 是用于显示原始字符串,及字符串内带的格式不会被转换,例如 换行符 \t 等
5 是 3.7 版本出的模板字符串表示方法,可以直接替换内部变量名为对应的值,例如
" 你的名字:{name}"
会将 name 的值直接替换到 {name}
的位置
常用方法
replace(old, new,count=None) 替换方法,用指定的新字符串替换旧的字符串,第三个参数是 `count` 是可选值,替换次数,默认是全量替换
find(str,beg=0,end=len(str)) 查找指定的字符串,返回查找到的位置,默认从 0 开始查找,查找失败时返回 -1
rfind(str, beg=0,end=len(string)) 类似 find 方法,不过是从右边开始查找
split(sep=None, maxsplit=-1) 按照指定的字符串拆分,`maxsplit` 拆分次数,默认值 -1 表示不限制 ,返回列表。常见用法如 英文通过空格拆分词等
strip(chars=None) 删除字符串开始和结束位置的指定字符,默认是删除空字符,还有两个类似方法如下
lstrip(chars=None) 类似 strip 方法,不过只删除字符串左边的指定字符
rstrip((chars=None) 类似 strip 方法,不过只删除字符串右边的指定字符
capitalize() 字符串首字母大写(中文无效)
title() 字符串单词首字母大写
upper() 字符串所有字母全大写
lower() 字符串所有字母全小写
swapcase() 字符串字母大小写反转,即大写转换为小写,小写转换为大写
center(width , fillchar=None) 指定字符串的宽度并居中显示,剩余的使用指定字符填充剩余长度,使内容居中显示
count(str,beg=0,end=len(str)) 统计指定字符片段出现的次数
startswith(str, beg=0,end=len(str)) 判断字符串是否以指定的字符开始(常用于协议判断等)
endswith(str,beg=0,end=len(str)) 判断字符串是否是以指定的字符串结尾(一般用于文件类型判断等)
isalnum() 判断字符串中是否至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
类似正则表达式 /(A-Za-z\d)+/
isalpha() 判断字符串至少有一个字符并且所有字符都是字母(仅包含A-Z a-z)则返回True,否则返回False
类似正则表达式 /(A-Za-z)+/
isdigit() 检测字符串是否仅包含数字(小数位 . 和 符号 +/- 都不行)
类似正则表达式 /\d+/
islower() 检测字符串是否均为小写字母
isnumeric() 如果字符串中只包含数字字符,则返回 True,否则返回 False (没有发现与 `isdigit` 有什么区别)
isspace() 检测字符串中所有字符是否均为空白字符
istitle() 判断字符串中单词首字母是否大写
isupper() 判断字符串是否都是大写
isdecimal() 判断字符串是否只包含十进制数字
这些方法都比较简单,而且 api 列得也比较详细,感觉也不需要举例说明了。
一般方法
index(str,beg=0,end=len(str)) 同 find 方法,不过唯一不同的是如果查找失败了,会抛出 ValueError 而不是返回 -1
ljust(width,fillchar=None) 返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格
rjust(width,fillchar=None) 返回一个原字符串右对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格
zfill(width) 返回长度为 width 的字符串,原字符串右对齐,前面填充0
rindex( str, beg=0, end=len(str)) 查找字符串片段,同 index ÿ