您的位置:首页 > 编程语言 > Python开发

Python 字符串总结

2017-04-15 00:32 148 查看

Python 字符串总结

对字符串的使用方法进行总结。

基础操作

1、创建字符串

Python中的字符串用引号’或者”包括起来。

普通字符串 s = ‘strstr’

空字符串 s = ”

2、修改字符串

字符串是不可修改的,类似元组。如:s = ‘abc’ s[0]=’z’会报错。

如果要增加或减少字符可通过建立一个新的字符串来实现,如:

s = 'abc'
s1 = s[0:2] #输出 s1 = 'ab'
s2 = s + 'def' #输出 s2 = 'abcdef'


3、访问字符串

s[index]

通过字符在字符串中的位置index获取

字符串的方法及注释

转载自FishC论坛:字符串的方法及注释

方法说明
capitalize()把字符串的第一个字符改为大写
casefold()把整个字符串的所有字符改为小写
center(width)将字符串居中,并使用空格填充至长度width的新字符串
count(sub[,start[,end]])返回sub在字符串里边出现的次数,start和end参数表示范围,可选。
encode(encoding='utf-8', errors='strict')以encoding指定的编码格式对字符串进行编码。
endswith(sub[,start[,end]])检查字符串是否以sub子字符串结束,如果是返回True,否则返回False。start和end参数表示范围,可选。
expandtabs([tabsize=8])把字符串中的tab符号(\t)转换为空格,如不指定参数,默认的空格数是tabsize=8。
find(sub[,start[,end]])检测sub是否包含在字符串中,如果有则返回索引值,否则返回-1,start和end参数表示范围,可选。
index(sub[,start[,end]])跟find方法一样,不过如果sub不在string中会产生一个异常。
isalnum()如果字符串至少有一个字符并且所有字符都是字母或数字则返回True,否则返回False。
isalpha()如果字符串至少有一个字符并且所有字符都是字母则返回True,否则返回False。
isdecimal()如果字符串只包含十进制数字则返回True,否则返回False。
isdigit()如果字符串只包含数字则返回True,否则返回False。
islower()如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回True,否则返回False。
isnumeric()如果字符串中只包含数字字符,则返回True,否则返回False。
isspace()如果字符串中只包含空格,则返回True,否则返回False。
istitle()如果字符串是标题化(所有的单词都是以大写开始,其余字母均小写),则返回True,否则返回False。
isupper()如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写,则返回True,否则返回False。
join(sub)以字符串作为分隔符,插入到sub中所有的字符之间。
ljust(width)返回一个左对齐的字符串,并使用空格填充至长度为width的新字符串。
lower()转换字符串中所有大写字符为小写。
lstrip()去掉字符串左边的所有空格
partition(sub)找到子字符串sub,把字符串分成一个3元组(pre_sub,sub,fol_sub),如果字符串中不包含sub则返回('原字符串', '', '')
replace(old,new[,count])把字符串中的old子字符串替换成new子字符串,如果count指定,则替换不超过count次。
rfind(sub[,start[,end]])类似于find()方法,不过是从右边开始查找。
rindex(sub[,start[,end]])类似于index()方法,不过是从右边开始。
rjust(width)返回一个右对齐的字符串,并使用空格填充至长度为width的新字符串。
rpartition(sub)类似于partition()方法,不过是从右边开始查找。
rstrip()删除字符串末尾的空格。
split(sep=None, maxsplit=-1)不带参数默认是以空格为分隔符切片字符串,如果maxsplit参数有设置,则仅分隔maxsplit个子字符串,返回切片后的子字符串拼接的列表。
splitlines(([keepends]))按照'\n'分隔,返回一个包含各行作为元素的列表,如果keepends参数指定,则返回前keepends行。
startswith(prefix[,start[,end]])检查字符串是否以prefix开头,是则返回True,否则返回False。start和end参数可以指定范围检查,可选。
strip([chars])删除字符串前边和后边所有的空格,chars参数可以定制删除的字符,可选。
swapcase()翻转字符串中的大小写。
title()返回标题化(所有的单词都是以大写开始,其余字母均小写)的字符串。
translate(table)根据table的规则(可以由str.maketrans('a','b')定制)转换字符串中的字符。
upper()转换字符串中的所有小写字符为大写。
zfill(width)返回长度为width的字符串,原字符串右对齐,前边用0填充。

字符串格式化符号含义及转义字符含义

转载自FishC论坛:字符串格式化符号含义及转义字符含义

格式化符号含义

符 号说 明
%c格式化字符及其ASCII码
%s格式化字符串
%d格式化整数
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制数(大写)
%f格式化定点数,可指定小数点后的精度
%e用科学计数法格式化定点数
%E作用同%e,用科学计数法格式化定点数
%g根据值的大小决定使用%f活%e
%G作用同%g,根据值的大小决定使用%f或者%E
使用方法:

仅有一个空时: print ('xxxx%c'%97)

多个空时:print ('%c %c %c'%(97, 98, 99)) 需要使用元组

格式化操作符辅助指令

符 号说 明
m.nm是显示的最小总宽度,n是小数点后的位数
-用于左对齐
+在正数前面显示加号(+)
#在八进制数前面显示 '0o',在十六进制数前面显示 '0x' 或 '0X'
0显示的数
9e57
字前面填充 '0' 取代空格
使用方法:

m.n: print('%5.5f' % 27.55),此时要求,小数点后要有5位数,若不足会自动补全,得到 :'27.55000'

: print( '%-010d' %27.55),此时若无 '-' 号时,将得到:'0000000027',若有'-'号,则得到:'27'

# :print('%#o' %12),简单易懂,转为8 or 16进制输出

字符串转义字符含义

符 号说 明
\'单引号
\"双引号
\a发出系统响铃声
\b退格符
\n换行符
\t横向制表符(TAB)
\v纵向制表符
\r回车符
\f换页符
\o八进制数代表的字符
\x十六进制数代表的字符
\0表示一个空字符
\反斜杠
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python