Python 字符串总结

来源:互联网 发布:win7 网络打印机脱机 编辑:程序博客网 时间:2024/06/13 10:50

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.n m是显示的最小总宽度,n是小数点后的位数 - 用于左对齐 + 在正数前面显示加号(+) # 在八进制数前面显示 '0o',在十六进制数前面显示 '0x' 或 '0X' 0 显示的数字前面填充 '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 表示一个空字符 \ 反斜杠
0 0