假设字符串变量为S
常用字符串的方法:
S.isdigit() # 判断字符串是否全为数字
>>> s1 = '123'
>>> s2 = 'a123'
>>> s1.isdigit()
True
>>> s2.isdigit()
False
S.isalpha() # 判断是否全英文字符
>>> s1 = 'lsk'
>>> s2 = 'l1s2k3'
>>> s1.isalpha()
True
>>> s2.isalpha()
False
S.islower() # 判断是否全为小写
>>> s2 = 'Lsk'
>>> s1 = 'lsk'
>>> s1.islower()
True
>>> s2.islower()
False
S.isupper() # 判断是否全为大写字符串
>>> s1 = 'LSK'
>>> s2 = 'Lsk'
>>> s2.isupper()
False
>>> s1.isupper()
True
S.isspace() # 判断字符串是否全为空白字符
>>> s1 = ' \n'
>>> s2 = ' 23'
>>> s1.isspace()
True
>>> s2.isspace()
False
S.center(width[,fill]) # 将原字符串居中,左右默认填充空格
>>> s = 'LSK'
>>> s.center(9)
' LSK '
>>> s.center(9,'*')
'***LSK***'
S.count(sub[, start[, end]]) #获取一个字符串中子串个数
>>> s = 'lsk is a boy'
>>> s.count(' ')
3
>>> s.count(' ',0,5)
1
S.find(sub[, start[, end]]) # 获取字符串中子串sub的索引失败返回-1
>>> s = 'lsk is a boy'
>>> s.find('boy')
9
>>> s[9:]
'boy'
>>> s.find('boy',0,8)
-1
S.strip() # 返回去掉左右空白字符的字符串
>>> s = ' LSK '
>>> s.strip()
'LSK'
S.lstrip() # 返回去掉左侧空白字符的字符串
>>> s.lstrip()
'LSK '
S.rstrip() # 返回去掉右侧空白字符的字符串
>>> s.rstrip()
' LSK'
S.title() # 生成每个英文单词首字母大写的字符串
>>> s = 'lsk is a boy'
>>> s.title()
'Lsk Is A Boy'
S.upper() # 生成将英文转换为大写的字符串
>>> s.upper()
'LSK IS A BOY'
S.lower() # 生成将英文转换为小写的字符串
>>> s = s.upper()
>>> s.lower()
'lsk is a boy'
S.replace(old, new[,count]) # 将字符串old用new代替,生成一个新的字符串
>>> s.replace('boy','girl')
'lsk is a girl'
空白字符是指空格,水平制表符(\t) , 换行符(\n)等不可见字符
字符串格式化表达式:
作用:
生成一定格式的字符串
运算符:
%
语法:
格式字符串 % 参数值
或
格式字符串 % (参数1,参数2,...)
示例:
>>> fmt = "name: %s, age: %d"
>>> name = 'LSK'
>>> age = 24
>>> fmt % (name,age)
'name: LSK, age: 24'
格式化字符串的占位符:
%s 字符串
%r 字符串(使用repr热不是str)
%c 整数转为单个字符串
%d 十进制整数
%o 八进制整数
%x 十六进制整数(字符a-f小写)
%X 十六进制整数(字符A-F大写)
%e,%E 指数表示的浮点数
%f,%F浮点小数
%g,%G十进制形式的浮点数或指数浮点数自动转换
%% 等同于一个字符 %
占位符% 和类型码之间的格式语法
- 号 左对齐
+ 号 正负号
0 补零
width 宽度(整数)
pricision精度(整数)
演示:
>>> s = '%10d'%123
>>> s
' 123'
>>> len(s)
10
>>> s = '%-10d'%123
>>> s
'123 '
>>> s = '%010d'%123
>>> s
'0000000123'
>>> "%7.3f" % 3.14159265356268987932
' 3.142'
>>> "%7.2f" % 3.14159265356268987932
' 3.14'
>>> len("%7.2f" % 3.14159265356268987932)
7