Python数据类型之字符串

  字符串就是一串字符,是编程语言中表示文本的数据类型。

  在Python中可以使用一对双引号或一对单引号定义一个字符串。

  Python针对字符串一共有44个方法。

  1.len方法用于统计字符串的长度

str = 'hello world!'
print(len(str))
>>> 12

  # 空格也算

  2.count统计某个字符在字符串中出现的次数,或在字符串指定区间内完成上述操作。

str = 'hello world!'
print(str.count('l'))
>>> 3

  如果指定的小字符串(子字符串)没有出现在大字符串中,则返回0

str = 'hello world!'
print(str.count('x'))
>>> 0

  从索引值0-6范围的字符中统计l出现的次数

str = 'hello world!'
print(str.count('l', 0, 6))
>>> 2

  3.index方法用于从字符串中找出某个对象第一个匹配的索引位置,如果这个对象不再其中会报一个异常。

str = 'hello world!'
print(str.index('l'))
>>> 2

  # 索引位置从0开始

   4.find方法可以在一个较长的字符串中查找子串,它返回子串所在位置的最左端索引。如果没有找到,则返回 -1。

url = 'www.google.cn'
print(url.find('cn'))
print(url.find('com'))
>>> 11
>>> -1

  #find和index方法类似,相同点是如果查找的字符在字符串中,那么都会返回字符串中最左端的索引位置,不同点是如果字符不在字符串中,find返回-1。index则会抛出valueError异常。

  5.rfind方法用来查询指定字符最后位置的索引。如果没有找到,则返回 -1。

info = 'my name is ... and i am ... old'
print(info.rfind('ol'))
print(info.rfind('abc'))
>>> 28
>>> -1

  #最后一个字符'ol'的索引起始位置是28

  6.strip方法返回去除两侧(不包括内部)空格的字符串。

info = ' my name is xxx and i am xxx old ! '
print(info.strip())
>>>my name is xxx and i am xxx old !

  #strip()括号内无空格

  也可以指定需要去除的字符,将他们列为参数即可(这个方法只删除开头或末尾的指定字符,因此中间的不会被删除)

info = '!my name is xxx! and i am xxx old !'
print(info.strip('!'))
>>> my name is xxx! and i am xxx old 

  #如果字符串'!'前后有空格,则无效。

  7.lstrip/rstrip去除字符串左侧/右侧的空格或指定的字符。

info = '!my name is xxx! and i am xxx old !'
print(info.lstrip('!'))
print(info.rstrip('!'))
>>> my name is xxx! and i am xxx old !
>>> !my name is xxx! and i am xxx old

  8.join方法用来连接序列中的元素。

x = '...'
color = ('hong', 'huang', 'lan')
print(x.join(color))
>>> hong...huang...lan

  #用字符串(这里是'...')替代掉列表中的逗号(x必须是字符串),返回的是全新的字符串。可以将返回的值赋给另外一个变量。

x = '...'
color =['hong', 'huang', 'lan']
a = x.join(color)

print(x, type(x))
>>>... <class 'str'>

>>>print(a, type(a))
hong...huang...lan <class 'str'>

print(color, type(color))
('hong', 'huang', 'lan') <class 'list'>

  #列表没有join方法,join方法只对字符串生效(列表/元组的元素必须都是字符串),对列表/元组进行操作,返回字符串。

  还有一种直接用指定的字符串连接元素

color =['hong', 'huang', 'lan']
print('2'.join(color))、
>>>hong2huang2lan

  9.split方法通过制定分割符对字符串进行切片,是join的逆方法

url = 'www.google.com'
print(url.split('.'))
>>>['www', 'google', 'com']

  #使用句点来替换掉字符串中指定的内容,返回的是个新列表,原来的字符串不变,split只对字符串有效。

  10.title方法将每个单词的首字母都改为大写

url = 'www.google.com'
print(url.title())
>>> Www.Google.Com

url = 'www google com'
print(url.title())
>>>Www Google Com

url = 'www*google*com'
print(url.title())
>>>Www*Google*Com

url = 'www2google3com'
print(url.title())
>>>Www2Google3Com

url = 'wwwgooglecom'
print(url.title())
>>>Wwwgooglecom

  #根据特殊字符判断?

  11.caplitalize方法用来将字符串小写首字母转换成大写

str = 'hello world!'
print(str.capitalize())
>>> Hello world!

  # 仅限于字符串第一个字母,除字母之外(数字,特殊字符)无效。

  12.upper,lower方法将字符串中大/小写转换成大/小写

str = '_hello world!'
print(str.upper())
>>>_HELLO WORLD!

str = '_Hello World!'
print(str.lower())
>>>_hello world!

   13.center方法填充字符串长度,使用原有字符串加填充字符构成指定长度的新的字符串

str = 'hello world'
print(str.center(20))
print(str.center(20, '-'))
>>>    hello world     
>>>----hello world-----

  14.ljust,rjust方法用于指定扩展字符串长度。

str = 'hello world'
print(str.ljust(5))
print(str.ljust(20, '*'))
>>>hello world
>>>hello world*********
str = 'hello world'
print(str.rjust(5))
print(str.rjust(20, '*'))
>>>hello world
>>>*********hello world

  #指定长度小于字符串长度则无效,如没有第二个参数,则默认使用空格代替。

  15.replace把字符串中的旧字符替换成新字符,如果指定第三个参数,则替换不超过3次

str = 'this is a test'
print(str.replace('is', 'xxx'))
>>>thxxx xxx a test

  可以指定次数(第三个参数)

str = "this is string example....wow!!! this is really string"
print(str.replace('is', 'was', 3))
>>> thwas was string example....wow!!! thwas is really string

  

 

 

 

 

 

转载于:https://www.cnblogs.com/jidanguanbing/p/11343503.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值