5.字符串:各种奇葩的内置方法/格式化

>>> str1 = 'I love fishc'

>>> str1[5]    #访问
'e'

>>> str1[:6]    #切片操作
'I love'

>>> str1 = str1[:6] + ' Insert' + str1[6:] #切片方式插入
>>> str1
'I love Insert fishc'

字符串方法:http://bbs.fishc.com/forum.php?mod=viewthread&tid=38992&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403


>>> dir(str)
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__',
 '__format__', '__ge__', '__getattribute__', '__getitem__',
 '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__',
'_formatter_field_name_split', '_formatter_parser', 'capitalize', 
'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 
'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 
'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 
'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 
'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 
'translate', 'upper', 'zfill']
>>> s1 = 'I love love love you'
>>> s1.count('love')   #'love'出现的次数
3

>>> s1.endswith('you')  #s1是否以'you'结尾
True

>>> s1 = 'I\tyou'  #把Tab(\t)转换成空格
>>> s1.expandtabs()
'I       you'
>>> s1.expandtabs(1)
'I you'

>>> s1.find('you')  #查找子串的起始索引位置
2
>>> s1.rfind('you')  #从右开始找子串'you'
2
>>> s1.index('you')
2
>>> s1.rindex('you') #从右开始
2

>>> s1 = 'fishc'
>>> s2 = '12345'
>>> s1.join(s2)
'1fishc2fishc3fishc4fishc5'

>>> s1 = "FishER_C"
>>> s1.lower()   #大写变小写  upper小写变大写
'fisher_c'
>>> s1.partition('sh')  #partition分成三个元组
('Fi', 'sh', 'ER_C')
>>> s1.partition('NULL')
('FishER_C', '', '')  #没有找到'NULL'的情况

>>> s1 = 'JJJJJJJJJJJJJ'   #把'J'替换成' N'并且不超过5次
>>> s1.replace('J',' N',5)
' N N N N NJJJJJJJJ'

>>> s1 = 'I love fish_C'  #字符串转换成list
>>> s1.split()  #默认情况下,以空格分隔
['I', 'love', 'fish_C']
>>> s1.split('fish') #指定以'fish'分隔
['I love ', '_C']

字符串的格式化:format

1)位置参数:
>>> '{0} love {1}.{2}'.format('I','fish','com')
'I love fish.com'
【解释】{0},{1},{2}表示字段0,1,22)关键字参数:
>>> '{a} love {b}.{c}'.format(a = 'I',b = 'fish',c = 'com')
'I love fish.com'3)位置参数/关键字参数混用
>>> '{0} love {1}.{a}'.format('I','fish',a = 'com')
'I love fish.com'
注意:位置参数必须在关键字参数之前,否则会报错。

(4)
>>> '{0:.2f}{1}'.format(27.456,'gary')
'27.46gary'
>>> '{0:.2f} {1:.3f}'.format(27.456,0.3145)  #四舍五入
'27.46 0.315'
注解:冒号后面是格式的开始

格式化输出

【字符串格式化符号以及含义】
%c 格式化字符/ASCII码
%s 格式化字符串
%d 格式化整数
%o 格式化无符号八进制数
%x 格式化无符号十六进制
%X 格式化无符号十六进制(大写)
%f 格式化定点数,可指定小数点后的精度
%e 科学计数法格式化定点数
%g 根据值的大小决定使用%f或%e
%G 作用同%g,根据值的大小决定使用%f或%e
【格式化操作符辅助指令】
m.n m是显示的最小总宽度,n是小数后的位数
-  用于左对齐
+  在正数前面显示+号
#  在八进制数前面显示零(‘0’),在十六进制前面显示(‘0x’)或(‘0X’)
0  现实的数字前面填充‘0’取代空格

【例】
>>> '%c %c %c' % (97,98,100) #用元组括起来
'a b d'
>>> '%s +Curry' % 'I love fish_C'
'I love fish_C +Curry'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值