发布于 3年前

Python整理之字符串操作

如有字符串 mystr = 'I am learning python string operation python.',以下是常见的操作

1、find

语法:

mystr.find(str, start=0, end=len(mystr))

检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1

实例:

print(mystr.find('Python'))#14
print(mystr.find('Python', 0, 10))#-1

2、rfind

类似于find()函数 ,不过是从右边开始查找

mystr.rfind(str, start=0,end=len(mystr))

实例:

print(mystr.rfind('python'))#38
print(mystr.rfind('python', 0, 10))#-1

3、index

跟find()方法一样,只不过如果str不在 mystr中会报一个异常.

mystr.index(str, start=0, end=len(mystr))

实例:

print(mystr.index('Python', 0, 10))

异常:

Traceback (most recent call last):
  File "i:/Python学习/字符串str.py", line 5, in 
    print(mystr.index('Python', 0, 10))
ValueError: substring not found

4、rindex

类似于 index(),不过是从右边开始.

mystr.rindex( str, start=0,end=len(mystr))

实例:

print(mystr.rindex('Python', 0, 10))

异常:

Traceback (most recent call last):
  File "i:/Python学习/字符串str.py", line 6, in 
    print(mystr.rindex('Python', 0, 10))
ValueError: substring not found

5、count

返回 str在start和end之间 在 mystr里面出现的次数

mystr.count(str, start=0, end=len(mystr))

实例:

print(mystr.count('on'))#3

6、replace

把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.

mystr.replace(str1, str2,  mystr.count(str1))

实例:

print(mystr.replace('python', 'Python', mystr.count('python')))

结果:

I am learning Python string operation Python.

7、split

mystr.split(str="", num=string.count(str))

以 str 为分隔符切片 mystr,如果 num 有指定值,则仅分隔 num 个子字符串

实例:

print(mystr.split(' '))
print(mystr.split(' ', 2))

结果:

['I', 'am', 'learning', 'python', 'string', 'operation', 'python.']
['I', 'am', 'learning python string operation python.']

8、capitalize

mystr.capitalize()

把字符串的第一个字符大写

实例:

mystr = 'i am learning python string operation python.'
print(mystr.capitalize())

结果:

I am learning python string operation python.

9、title

mystr.title()
``````python
把字符串的每个单词首字母大写
实例:
```python
print(mystr.title())

结果:

I Am Learning Python String Operation Python.

10、startswith

mystr.startswith(obj)

检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False

实例:

print(mystr.startswith('I'))
print(mystr.startswith('i'))

结果:

True
False

11、endswith

mystr.endswith(obj)

检查字符串是否以obj结束,如果是返回True,否则返回 False

实例:

print(mystr.endswith('python.'))
print(mystr.endswith('Python.'))

结果:

True
False

12、lower

mystr.lower()

转换 mystr 中所有大写字符为小写

实例:

mystr = 'I AM LEARNING PYTHON STRING OPERATION PYTHON.'
print(mystr.lower())

结果:

i am learning python string operation python.

13、upper

mystr.upper()

转换 mystr 中的小写字母为大写

实例:

mystr = 'i am learning python string operation python.'
print(mystr.upper())

结果:

I AM LEARNING PYTHON STRING OPERATION PYTHON.

14、ljust

mystr.ljust(width)

返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串

实例:

mystr = 'Hello'
print(len(mystr))
print(len(mystr.ljust(10)))

结果:

返回字符串长度可明显看出效果

5
10

15、rjust

mystr.rjust(width)

返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串

实例:

mystr = 'Hello'
print(mystr.rjust(10))
print(len(mystr.rjust(10)))

结果:

     Hello
10

16、center

mystr.center(width)

返回一个原字符串居中,并使用空格填充至长度 width 的新字符串

实例:

mystr = 'Hello'
print(mystr.center(25))

结果:

           Hello

17、lstrip

mystr.lstrip()

删除 mystr 左边的空白字符

实例:

mystr = '    Hello    '
print(mystr.lstrip())

结果:

Hello

18、rstrip

mystr.rstrip()

删除 mystr 字符串末尾的空白字符

实例:

mystr = '    Hello    '
print(mystr.rstrip())

结果:

    Hello

19、strip

mystr.strip()

删除mystr字符串两端的空白字符

实例:

mystr = '    Hello    '
print(mystr.strip())

结果:

Hello

20、partition

mystr.partition(str)

把mystr以str分割成三部分,str前,str和str后

实例:

mystr = 'i am learning python string operation python.'
print(mystr.partition('string'))

结果:

('i am learning python ', 'string', ' operation python.')

21、rpartition

mystr.rpartition(str)

类似于 partition()函数,不过是从右边开始.

实例:

mystr = 'i am learning python string operation string python.'
print(mystr.rpartition('string'))

结果:

('i am learning python string operation ', 'string', ' python.')

22、splitlines

mystr.splitlines()

按照行分隔,返回一个包含各行作为元素的列表

实例:

mystr = 'i am learning python \nstring operation string python.'
print(mystr.splitlines())

结果:

['i am learning python ', 'string operation string python.']

23、isalpha

mystr.isalpha()

如果 mystr 所有字符都是字母 则返回 True,否则返回 False

实例:

mystr = 'Hello'
print(mystr.isalpha())
mystr = '12345'
print(mystr.isalpha())
mystr = 'abc 123'
print(mystr.isalpha())

结果:

True
False
False

24、isdigit

mystr.isdigit()

如果 mystr 只包含数字则返回 True 否则返回 False.

实例:

mystr = 'Hello'
print(mystr.isdigit())
mystr = '12345'
print(mystr.isdigit())
mystr = 'abc 123'
print(mystr.isdigit())

结果:

False
True
False

25、isalnum

mystr.isalnum()

如果 mystr 所有字符都是字母或数字则返回 True,否则返回 False

实例:

mystr = 'Hello'
print(mystr.isalnum())
mystr = '12345'
print(mystr.isalnum())
mystr = 'abc123'
print(mystr.isalnum())
mystr = 'abc 123'
print(mystr.isalnum())

结果:

True
True
True
False

26、isspace

mystr.isspace()

如果 mystr 中只包含空格,则返回 True,否则返回 False.

实例:

mystr = 'Hello'
print(mystr.isspace())
mystr = ''
print(mystr.isspace())
mystr = ' '
print(mystr.isspace())
mystr = 'abc 123'
print(mystr.isalnum())

结果:

False
False
True
False

27、join

mystr.join(str)

mystr 中每个字符后面插入str,构造出一个新的字符串

实例:

str = ' '
li = ['I', 'am', 'learning', 'python', 'string', 'operation', 'python.']
print(str.join(li))
str = '_'
print(str.join(li))

结果:

I am learning python string operation python.
I_am_learning_python_string_operation_python.
©2020 edoou.com   京ICP备16001874号-3