字符串修改
replace(old,new[,count]) -> str
字符串中找到匹配替换为新子串, 返回新字符串
count 表示替换几次, 不指定就是全部替换
原字符串为一个常量, 不可变. 修改返回的为新子串
strip([chars]) -> str
从字符串两端去除指定字符集 chaars 中的所有字符
如果 chars 没有指定, 去除两端的空白字符
空白字符, 就是指看不见的字符如 \ r\n\t 空格 空白字符, 空串确实为空
lstrip([chars]) -> str
从左开始
rstrip([chars]) -> str
从右开始
字符串查找
find(sub[,start[,end]]) -> int
在指定的区间[start,end), 从左至右, 查找子串 sub. 找到返回索引, 没找到返回 - 1
顺序查找, 不可能跳跃查找
rfind(sub[,start[,end]]) -> int
在指定的区间[start,end), 从右至左, 查找子串 sub. 找到返回索引, 没找到返回 - 1
index(sub[,start[,end]]) -> int
在指定的区间[start,end), 从左至右, 查找子串 sub. 找到返回索引, 没找到抛出 ValueError
rindex(sub[,start,[end]]) -> int
在指定的区间[start,end), 从左至右, 查找子串 sub. 找到返回索引, 没找到抛出异常 ValueError
* 时间复杂度
index 和 count 方法都是 O(n)
随着列表数据规模的增大, 而效率下降
len(string)
返回字符串的长度, 即字符的个数
count(sub[,start[,end]])-> int
在指定的区间[start,end), 从左至右, 统计子串 sub 出现的次数
字符串判断
ends with(suffix[,start[,end]]) ->bool
在指定的区间[start,end), 字符串是否是 suffix 结尾
startswith(prefix[,start,end]]) -> bool
在指定的区间[start,end), 字符串是否是 prefix 开头
* 查找是注意定义范围, 默认遍历非常耗时
字符串判断 is 系列
isalnum() ->bool 是否是字母和数字组成
isalpha()是否是字母
isdecimal()是否只包含十进制数字
isdigit()是否全部数字(0-9)
isidentifier()是不是字母和下划线开头, 其他都是字母, 数字, 下划线.
islower()是否都是小写
isupper()是否全部大写
isspace()是否只包含空白字符
字符串格式化
字符串的格式化是一种拼接字符串输出样式的手段, 更灵活方便
join 拼接只能使用分隔符, 且要求被拼接的是可迭代对象
+ 拼接字符串还算方便, 但是非字符串需要先转换为字符串才能拼接
在 2.5 版本之前, 只能使用 printf style 风格的 print 输出
printf-style formatting, 来自于 c 语言的 print 输出
格式要求
占位符: 使用 % 和格式字符组成, 例如 %s,%d 等
s 调用 str(),r 会调用 repr(). 所有对象都可以被这两个转换
占位符中还可以插入修饰字符, 例如 %03d 表示打印 3 个位置, 不够前面补零
format%value 格式字符串和被格式的值之间使用 % 分隔
values 只能是一个对象, 或是一个和格式字符串占位符数目相等的元组, 或一个字典
* 不是所有数字都能精确表达, 只能控制在一定范围
format 函数格式字符串语法 ---Python 鼓励使用
"{}{xxx}".format(*args,**kwargs) -> str
args 是位置参数, 是一个元组
kwargs 是关键字参数, 是一个字典
花括号表示占位符
{}表示按照顺序匹配位置参数,{n}表示取位置参数索引为 n 的值
{xxx}表示在关键字参数中搜索名称一致的
{{}}表示打印花括号
来源: http://www.bubuko.com/infodetail-2725359.html