Python基础(str类)

二、字符串(str类)

提示:以下所有方法都是类中的方法,第一个参数都是self,统一都没有写出。


包含的方法有:

1、capitalize()     #首字母变大写

>>> name='hello world'

>>> name.capitalize()

'Hello world'


2、center(width, fillchar=None)#内容居中,width:总长度;fillchar:空白处填充内容,默认无

>>> name='hello world'

>>> name.center(20,'#')

'####hello world#####'


3、count(x,start=None, end=None)#子序列x的个数参数可以接开始和结束位置

>>> name='abcdd'

>>> name.count('d',0,9)

2

>>> name.count('d',0,3)

0

>>> name.count('d',0,4)

1


4、find(x,start=None, end=None)#查找子序列x的位置,如果没有找到则返回-1

>>> name='abcd'

>>> name.find('a')

0

>>> name.find('d')

3

>>> name.find('e')

-1


5、index(x,start=None, end=None)#查找子序列x的位置,如果没有找到则异常

>>> name.index('a')

0

>>> name.index('d')

3

>>> name.index('e')

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

ValueError: substring not found


6、endswith(x)#是否以x结束

>>> name='abcd'

>>> name.endswith('a')

False

>>> name.endswith('d')

True


7、startswith(x)#是否以x开始

>>> name='abcd'

>>> name.startswith('a')

True

>>> name.startswith('d')

False


8、expandtabs(tabsize=None)#将tab转换成空格,默认一个tab转换成8个空格

>>> name='ab    cd'

>>> name.expandtabs(4)

'ab  cd'


9、format()#字符串格式化,4种方式

9-1:

str1='I am {0}, age {1}'

str1.format('alex',24)

9-2:

str2='I am {ss}, age {dd}'

str2.format(ss='alex',dd=24)#类似于函数的形参

9-3:

li=['alex',24]

str3='I am {0}, age {1}'

str3.format(*li)#列表的元素个数必须和需要的参数相等

9-4:

dic={'ss':alex,'dd':24}

str4='I am {ss}, age {dd}'

str4.format(**dic)#字典的key必须和形参的名称一致


10、isalnum()#是否是字母和数字

>>> name='abcd'

>>> name.isalnum()

True


11、isalpha()#是否是字母

>>> name='abcd'

>>> name.isalpha()

True


12、isdigit()#是否是数字

>>> name='abcd'

>>> name.isdigit()

False


13、islower()#是否小写lower() 是把字符串中的大写变为小写

>>> name='abcd'

>>> name.islower()

True

>>> name='Abcd'

>>> name.islower()

False


14、isupper()#是否是大写upper() 是把字符串中的小写变为大写

>>> name='abcd'

>>> name.isupper()

False

>>> name='ABCD'

>>> name.isupper()

True


15、istitle()#是否是标题title() 是把字符串设置为标题,也就是每个单词的首字母大写

>>> name='hello world'

>>> name.istitle()

False


16、isspace()#是否是空格

>>> name=' '

>>> name.isspace()

True


17、join()#连接返回的是一个字符串,与之相反的是split

>>> name='abcd'

>>> '_'.join(name)

'a_b_c_d'

>>> name=['a','b','c','d']

>>> '_'.join(name)

'a_b_c_d'


18、split(sep,maxsplit=None)#分割,maxsplit最多分割几次,默认是全分割,返回的值是一个列表

>>> name='a,b,c,d'

>>> name.split(',')#全分割

['a', 'b', 'c', 'd']

>>> name.split(',',2)#只分割前两个字符串

['a', 'b', 'c,d']


19、ljust(width, fillchar=None)#内容左对齐,width为宽度,右侧填充指定字符,fillchar默认为空rjust() 是右对齐,语法格式一样

>>> name='abcd'

>>> name.ljust(20,'#')

'abcd################


20、lstrip()#移除左侧空白rstrip() 移除右侧空白strip() 移除两侧空白

>>> name='  abcd   '

>>> name.lstrip()

'abcd   '

>>> name.rstrip()

'  abcd'

>>> name.strip()

'abcd'


21、partition(sep)#以sep为分割点 分割,前,中,后三部分

>>> name='abc'

>>> name.partition('b')

('a', 'b', 'c')


22、replace(old,new,count=None)#替换,count参数是指定替换个数,默认是全部替换

>>> name='abcd'

>>> name.replace('a','e')

'ebcd'

>>> name='1122334444'

>>> name.replace('4','5',2)#替换2个4

'1122335544'

>>> name.replace('4','5',3)#替换3个4

'1122335554


23、swapcase()#大写变小写,小写变大写

>>> name='ABcd'

>>> name.swapcase()

'abCD'


24、translate(table, deletechars=None)#字符转换,需要先做一个对应表table,deletechars默认是空,若指定了一个字符,则被指定的字符将会被删除

import string

intab = "aeiou"

outtab = "12345"

trantab = string.maketrans(intab, outtab)

str1 = "this is string example....wow!!!"

print str.translate(trantab, 'xm')#str1中的含有转换表中的字符都会被转换,x和m字符将会被删除。

输出结果:th3s 3s str3ng 21pl2....w4w!!!


下一篇

列表(list类)


你可能感兴趣的:(python)