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

python基础一数据类型之字符串

2017-12-20 14:37 615 查看
摘要:

python基础一中有字符串,所以这篇主要讲字符串。

一,字符串的注释

二,字符串的索引与切片

三,字符串的方法

一,字符串的注释

单引号 双引号 三引号都可以用户定义字符串。三引号不仅可以定义字符串,还可以用于注释。

str = 'abcedfg'
str = "abcedfg"
str = '''abcedfg'''


注释如下:
'''
this is tes
'''


  

二,字符串的索引与切片

a = 'abcefg'

a[0] 索引的值

a[0:2] 切片的值



三,字符串的方法

1,capitalize  (将首字母变换成大小)

str1 = 'abc123321cda'

str1.capitalize()

      运行结果:Abc123321cda


  

2,center  center(self, width, fillchar=None)    内容居中,width:总长度;fillchar:空白处填充内容,默认无.self不用填写
str1 = 'abc123321cda'

str1.
      运行结果:'####abc123321cda####'


  

3,count (关键字的个数)

str1 = 'abc123321cda'

str1.count('a')

      运行结果:2


  

4,endswith' (以什么结尾,返回bool值)

str1 = 'abc123321cda'

str1.endswith('a')

      运行结果:True


  

5,expandtabs (将制表符转换为空格,默认1个制表符为8个空格)

str1 = 'abc\t123321cda'

str1.expandtabs(16)

      运行结果:abc             123321cda


  

  

6,find  find(sub [,start [,end]]) 寻找子序列的位置,如果没找到,则返回-1.

str1 = 'abc123321cda'

str1 = 'abc123321cda'

运行结果:2


7,format  字符串格式化,动态参数。其中{0},{1}为占符。

str1 = 'ab{0}123321cd{1}'

str1.format('c','a')

运行结果:'abc123321cda'


8,index index(sub [,start [,end]]) 寻找子序列的位置,如果没有,则报错,和find类似。

str1 = 'abc123321cda'

str1.index('a')

运行结果:'0'


  

9,isalnum  是否只由数字和字母组成,以bool值返回。

str1 = 'abc123321cda'

str1.isalnum()

运行结果:True
  


  

10,isalpha  是否为字母,以bool值返回。

str1 = 'abc123321cda'

str1.isalpha()

运行结果:False
  


  

11,isdigit  是否数字,以bool值返回。

str1 = 'abc123321cda'

str.isdigit()

运行结果:False


  

12,islower  是否全为小写,以bool值返回。

str1 = 'abc123321cda'

str1.islower()

运行结果:True


  

13,isspace  是否全为空格,以bool值返回。

str1 = 'abc   123321cda'

str1.isspace()

运行结果:False


14,istitle  判断每个字符串第一个字母是不是大写,其他是不是小写

str1 = 'Abc123321Dda'

str1.istitle()

运行结果:True


  

15,isupper 判断每个字符串是否都为大写

str1 = 'Abc123321Dda'

str1.isupper()

运行结果:False


  

16,join 连接字符串

str1 = 'abc123'

'_'.join(str1)

运行结果:'a_b_c_1_2_3'

这个我一般用于列表的连接。例如:

list1 = ['hello','boy']
','.join(list1)
    

     运行结果:'hello,boy'


  

17,ijust (self, width, fillchar=None) 
  内容左对齐,右侧填充。


str1 = 'Abc123321Dda'

str1.ljust(20,'#')

运行结果:'Abc123321Dda########'


  

18,lower 所有字符串大小字母变小写

str1 = 'Abc123321Dda'

str1.lower()

运行结果:'abc123321dda'


  

19,lstrip  lstrip(self, chars=None)  去除左侧字符,默认为空白。

str1 = '      Abc123321Dda'

str1.lstrip()

运行结果:'Abc123321Dda'


20,partition   (self, sep) 分割切前中后三部分,以元祖形式返回

str1 = 'Abc123321Dda'

str1.partition('33')

运行结果:('Abc12', '33', '21Dda')


  

21,replace   替换字符串

str1 = 'Abc123321Dda'

str1.replace('A','a')

运行结果:'abc123321Dda'


  

22,rfind  查找子序列的位置  和find类似,它是从右往左找,或者说是最后1个子序列的位置,如果没找到,返回-1.

str1 = 'Abc123321cda'

str.rfind('c')

运行结果:9


  

23,rindex 查找子序列的位置  和index类似,它是从右往左找,或者说是最后1个子序列的位置,如果没找到,报错!

str1 = 'Abc123321cda'

str.rindex('c')

运行结果:9


 

24,rjust (self, width, fillchar=None) 内容右对齐,右侧填充。

str1 = 'Abc123321Dda'

str1.rjust(20,'#')

运行结果:'########Abc123321Dda'


  

 

25,rpartition   (self, sep) 分割切前中后三部分,以元祖形式返回,从右向左切割,即以最后1个关键字作为切割符。

str1 = 'Abc123321Dda'

str1.rpartition('2')

运行结果:('Abc1233', '2', '1Dda')


  

26,rsplit(self, sep=None, maxsplit=None)  maxsplit指定切割的次数   切割,从右边开始切割,切割的字符不会出现到切割元祖中。

str1 = 'Abc123321Dda'

str1.rsplit('2')

运行结果:['Abc1', '33', '1Dda']


  

27,rstrip  rstrip(self, chars=None)  去除右侧字符,默认为空白。

str1 = 'Abc123321Dda   '

str1.rstrip()

运行结果:'Abc123321Dda'


  

28,split(self, sep=None, maxsplit=None)  maxsplit指定切割的次数   切割,从左边开始切割,切割的字符不会出现到切割元祖中。

str1 = 'Abc123321Dda'

str1.split('2')

运行结果:['Abc1', '33', '1Dda']


  

29,splitlines  以换行符(\n)作为分割,以列表形式返回。

str1 = 'Abc123\n321Dda',

str1.splitlines()

运行结果:['Abc123', '321Dda']


  

31, startswith' (以什么开头,返回bool值)

str1 = 'abc123321cda'

str1.startswith('a')

      运行结果:True


  

32, strip 去除左右2边字符,默认空格。

str1 = '    abc123321cda  '

str1.strip()

      运行结果:'abc123321cda'

str1 = '-abc123abc#'

str1.strip('-#')

运行结果:'abc123abc'


  

33, swapcase 小写变大写,大小变小写

str1 = 'Abc123321cD'

str1.startswith('a')

      运行结果:'aBC123321Cd'


  

34, title 字符串首字母转换成大写

str1 = 'abc123321cd'

str1 = str1.title()

      运行结果:'Abc123321Cd'


  

35, translate  translate(table[, deletechars])  返回翻译后的字符串(较复杂,要想要translate,就需要先用maketrnas创建翻译表)

table -- 翻译表,翻译表是通过maketrans方法转换而来。
     
deletechars -- 字符串中要过滤的字符列表。
from string import maketrans

intab = 'abcde'
outtab = '12345'
trantab = maketrans(intab,outtab)

str1 = 'abcdefg'
print str1.translate(trantab)

      运行结果:'12345fg’,从运行结果可以发现其实是将abcde用12345替代了而已
     


  

 

36, upper 小写字母转换成大写

str1 = 'abc123321cd'

str.upper()

      运行结果:'ABC123321CDA'


  

37, zfill 返回指定个数的字符串,原字符串右对齐,前面填充0

str1 = 'abc123321cd'

str1.zfill()

      运行结果:'000000000abc123321cd'


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: