python字符串常用的方法

1. find( ):在字符串中搜索指定的值并返回它被找到的位置,如果没有找到,则返回-1

string.find(value,start,end)  #value:必需,要检索的值;start:可选,开始检索的位置,默认是0;end:可选,结束检索的位置,默认是字符串的结尾。

#!/usr/bin/python
#如果只是位置5和10之间搜索时,字母“e”首次首先在哪里?
txt = "Hello, welcome to my world."
x = txt.find("e",5,10)
print(x) #输出结果:8

rfind( ):在字符串中搜索指定的值,并返回它被找到的最后位置,如果没有匹配项则返回-1。

string.rfind(value,start,end)  #value:必需,要检索的值;start:可选,从何处开始检索,默认是0;end:可选,在何处结束检索,默认是到字符串的末尾。
#!/usr/bin/python
str = "this is really a string example...wow!!!"
substr = "is"
print (str.rfind(substr,0,10)) #输出结果:5

2. index( )): 在字符串中搜索指定的值并返回它被找到的位置,否则引发异常。与find方法唯一不同的是找不到值,find方法返回-1。

string.index(value,start,end)    #value:必需,要检索的值;start:可选,在哪里开始检索,默认是0;end:可选,在哪里结束检索,默认是字符串的末尾。

#!/usr/bin/python
#如果只是位置5和10之间搜索时,字母“e”首次首先在哪里?
txt = "Hello, welcome to my world."
x = txt.index("e",5,10)
print(x) #输出结果:8 #搜素字符串中的q,如果没有则返回异常
txt ="Hello, welcome to my world."
print(txt.index("q")) #输出结果:ValueError:substring not found

 rindex( ):在字符串中搜索指定的值,并返回它被找到的最后位置,否则引发异常

string.rindex(value,start,end)  #value:必需,要检索的值;start:可选,从何处开始检索,默认是0;end:可选,在何处结束检索,默认是字符串的末尾。

#!/usr/bin/python
#最后出现文本中的字母“e”是哪里
txt = "Hello, welcome to my world."
x = txt.rindex("e")
print(x) #输出结果:13

3. count( ):返回指定值在字符串中出现的次数,如果不存在则返回0

string.count(value,start,end)   #value:必需,字符串,要检索的字符串;start:可选,整数,开始检索的位置,默认是0;end:可选,整数,结束检索的位置,默认是字符串的结尾。
#!/usr/bin/python
#从位置10到24进行检索
txt = "I love apples, apple are my favorite fruit"
x = txt.count("apple",10,24)
print(x) #输出结果:1

4. split( ):在指定的分隔符处拆分字符串,并返回列表。默认分隔符是空白

string.split(separator,max)    #separator:可选,规定分割字符时要使用的分隔符,默认值为空白字符。max:可选,规定要执行的拆分数,默认值为-1,即“所有出现次数”。

#!/usr/bin/python
#将字符串拆分为最多2个项目的列表
txt = "apple#banana#cherry#orange"
x = txt.split("#",1) #将max参数设置为1,将返回包含2个元素的列表
print(x) #输出结果:['apple', 'banana#cherry#orange']

 rsplit( ):在指定的分隔符处拆分字符串,并返回列表。默认分隔符是空白

string.rsplit(separator, max)   #separator:可选,规定分割字符串时要使用的分隔符,默认值为空白。max:可选,指定要执行的拆分数,默认值为-1,即“所有出现次数”

#!/usr/bin/python
#将字符串拆分为最多2个项目的列表
txt = "apple,banana,cherry"
x = txt.rsplit(",",1) #将max参数设置为1,将返回包含2个元素的列表
print(x) #输出结果:['apple,banana', 'cherry']

5. partition( ):搜索指定的字符串,并将该字符串拆分为包含三个元素的元组。第一个元素包含指定字符串之前的部分;第二个元素包含指定的字符串;第三个元素包含字符串后面的部分

string.partiton(value)    #value:必需,要检索的字符串

#!/usr/bin/python
#如果找不到指定的值,则partition方法将返回一个元组,其中包含:1-整个字符串,2-空字符串,3-空字符串
txt = "I could eat bananas all day"
x1 = txt.partition("bananas")
x2 = txt.partition("apples")
print(x1,x2) #输出结果:('I could eat ', 'bananas', ' all day') ('I could eat bananas all day', '', '')

 rpartiton( ):搜索指定字符串的最后一次出现,并将该字符串拆分为包含三个元素的元组。第一个元素包含指定字符串之前的部分;第二个元素包含指定的字符串;第三个元素包含字符串之后的部分。

string.rpartiton(value)    #value:必需,要检索的字符串

#!/usr/bin/python
#如果找不到指定的值,则partition方法将返回一个元组,其中包含:1-整个字符串,2-空字符串,3-空字符串
txt = "I could eat bananas all day, bananas are my favorite fruit"
x1 = txt.rpartition("bananas")
x2 = txt.rpartition("apples")
print(x1,x2) #输出结果:('I could eat bananas all day, ', 'bananas', ' are my favorite fruit') ('', '', 'I could eat bananas all day, bananas are my favorite fruit')

6. join( ):获取可迭代对象中的所有项目,并将它们连接为一个字符串。必须将字符串指定为分隔符。

string.join(iterable)    #iterable: 必需,所有返回值均为字符串的任何可迭代对象

#!/usr/bin/python
#使用单词“TEST”作为分隔符,将字典中的所有项目连接成一个字符串
myDict = {"name":"Bill","country":"USA"}
mySeparator = "TEST"
x = mySeparator.join(myDict)
print(x) #在使用字典作为迭代器时,返回的值是键,而不是值。
#输出结果:nameTESTcountry

7. lower( ):返回一个字符串,其中所有字符均为小写,符号和数字被忽略。

string.lower( )

#!/usr/bin/python
#小写字符串
txt = "Hello my FRIENDS"
x = txt.lower()
print(x) #输出结果:hello my friends

 upper( ):返回一个字符串,其中所有字符均为大写,符号和数字被忽略

string.upper( )

#!/usr/bin/python
#大写字符串
txt = "Hello my friends"
x = txt.upper()
print(x) #输出结果:HELLO MY FRIENDS

 capitalize( ):返回一个字符串,其中第一个字符为大写

string.capitalize( ) 

#!/usr/bin/python
#大写这句话第一个字母
txt = "hello, and welcome to my world"
x = txt.capitalize()
print(x) #输出结果:Hello, and welcome to my world

 title( ):返回一个字符串,其中每个单词的第一个字符均为大写,比如标题

string.title ( ) 

#!/usr/bin/python
#将每个单词的首字母大写
txt = "welcome to my 2nd world"
x = txt.title()
print(x) #输出结果:Welcome To My 2Nd World

 swapcase( ):返回一个字符串,其中所有大写字母均成为小写字母,反之亦然。

string.swapcase( )

#!/usr/bin/python
#将小写字母大写,大写字母小写
txt = "Welcome To my 2nD world"
x = txt.swapcase()
print(x) #输出结果:wELCOME tO MY 2Nd WORLD

8. replace( ):用另一个指定的短语替换一个指定的短语。如未指定其他内容,则将替换所有出现的指定短语

string.replace(oldvalue, newvalue, count)   #oldvalue:必需,要检索的字符串;newvalue:必需,替换旧值得字符串;count:可选,数字,指定要替换的旧值出现次数,默认为所有的出现。

#!/usr/bin/python
#替换前两次出现的单词“one”
txt = "one one was a race horse, two two was one too"
x = txt.replace("one","three",2)
print(x) #输出结果:three three was a race horse, two two was one too

9. strip( ):删除任何前导(开头的空格)和尾随(结尾的空格)字符(空格是要删除的默认前导字符)(删除字符串前导空格)

string.strip(characters)    #characters:可选,一组字符,要删除的前导/尾随的字符的字符

#!/usr/bin/python
#删除前导和尾随字符
txt = ",,,,rrttgg....banana...rrr"
x = txt.strip(",.grt")
print(x) #输出结果:banana

 rstrip ( ):删除所有结尾字符(字符串末尾的字符),空格是删除的默认结尾字符(删除字符串结尾空格)

string.rstrip(characters)     #characters:可选,一组作为结尾字符要删除的字符

#!/usr/bin/python
#删除结尾字符
txt = "banana,,,,ssaaww...."
x = txt.rstrip(",.asw")
print(x) #输出结果:banan

 lstrip( ):删除所有前导字符(空格是要删除的默认前导字符)

string.lstrip(characters)    #characters:可选,一组作为前导字符要删除的字符

#!/usr/bin/python
#删除前导字符
txt = ",,,,,ssaaww....banana"
x = txt.lstrip(",.swa")
print(x) #输出结果:banana

10. center( ):将使用指定的字符(默认为空格)作为填充字符使字符串居中对齐

string.center(length,character)       #length:必需,所返回字符串的长度;character:可选,填补两侧缺失空间的字符,默认是“”(空格)。

#!/usr/bin/python
#使用字母“o"作为填充字符
txt= "banana"
x = txt.center(20,"o")
print(x) #输出结果:ooooooobananaooooooo

11. casefold( ):返回一个字符串,其中所有字符均为小写。casefold方法比lower方法强大,可以将更多字符串转换为小写字母。

string.casefold( )     

#!/usr/bin/python
#将字符串设为小写
txt= "Hello, And Welcome To My World!"
x = txt.casefold()
print(x) #输出结果:hello, and welcome to my world!

12. endswitch( ):如果字符串以指定值结尾,则返回True,否则返回False。

string.endswith(value, start,end)   #value:必需,检查字符串是否以之结尾的值;start:可选,整数,规定从哪个位置开始检索;end:可选,整数,规定从哪个位置结束检索。

#!/usr/bin/python
#检查位置5至11是否以短语“my world.”结尾
txt= "Hello, welcome to my world."
x = txt.endswith("my world.",5,11)
print(x) #输出结果:False

13. expandtabs( ):将制表符的大小设置为指定的空格数

string.expandtabs(tabsize)    #tabsize:可选,规定制表符大小的数字,默认的tabsize为8.

#!/usr/bin/python
#将制表符大小设置为2个空格
txt= "H\te\tl\tl\to"
x = txt.expandtabs(2)
print(x) #输出结果:H e l l o

14. format( ):格式化指定的值,并将其插入字符的占位符内。

string.format(value1,value2...)    #value1,value2...:必需,一个或多个应该格式化并插入字符串的值,值可以是数字,用于指定要删除的元素的位置。这些值可以用逗号分隔的值列表、键 = 值列表, 或两者的组合。这些值可以是任何数据类型。

#!/usr/bin/python
#将价格插入占位符内,价格应为定点,两位十进制格式
txt = "For only {price:2f} dollars!"
print(txt.format(price = 49)) #输出结果:For only 49.000000 dollars!

15. 合并(拼接)字符串:用+ 号来合并字符串

first_name = 'wang'
last_name = 'crystal'
full_name = first_name + " "+last_name
message = "Hello," + full_name .title() +"!"
print(message) #输出结果:Hello,Wang Crystal!

16. 使用制表符或换行符来添加空白:空白泛指任何非打印字符,如空格、制表符(\t)和换行符(\n)。

print("Language:\n\tPython\n\tJavaScript")

#结果输出
Language:
Python
JavaScript

17. 删除空白

备注:部分内容摘录自:https://www.w3school.com.cn/python/

Python语言学习:字符串常用的方法的更多相关文章

  1. Python - 基本数据类型及其常用的方法之字典和布尔值

    字典 特点:{"key1": value1, "key2":value2}  , 键值对中的值可以为任何数据类型,键不能为列表.字典(无法哈希),布尔值可以为键 ...

  2. Python - 基本数据类型及其常用的方法之元组

    元组 特点:一级元素无法被修改,且不能被增加或者删除. 基本操作: tu = (11, 22, ["aiden", 33, ("qwe", 11)], 77) ...

  3. python3【基础】-字符串 常用的方法

    字符串一个最重要的特性就是不可修改. name.capitalize() 首字母大写 name.casefold() 大写全部变小写 name.center(50,"-") 输出 ...

  4. Go语言中字符串的查找方法小结

    这篇文章主要介绍了Go语言中字符串的查找方法小结,示例的main函数都是导入strings包然后使用其中的方法,需要的朋友可以参考下   1.func Contains(s, substr strin ...

  5. Python语言学习:列表常用的方法

    python 列表常用的方法 1.append( ):用于在列表末尾添加新的对象 list.appent(obj) #obj:添加到列表末尾的对象 #!/usr/bin/python aList = ...

  6. python字符串常用的方法解析

    这是本人在学习python过程中总结的一些关于字符串的常用的方法. 文中引用了python3.5版本内置的帮助文档,大致进行翻译,并添加了几个小实验. isalnum S.isalnum() -> ...

  7. Python学习入门基础教程(learning Python)--8.3 字典常用的方法函数介绍

    本节的主要讨论内容是有关dict字典的一些常用的方法函数的使用和范例展示. 1. clear清除字典数据 语法结构如下: dict_obj.clear() 示例代码如下: dict1 = {'web' ...

  8. Day2 Python基础学习——字符串、列表、元组、字典、集合

    Python中文学习大本营:http://www.pythondoc.com/ 一.字符串操作 一.用途:名字,性格,地址 name = 'wzs' #name = str('wzs')print(i ...

  9. python语言学习

    前段时间要做视频直播需要编写自动模块,就考虑使用python脚本语言,python的好多语法都是很独特的,比如数据类型不需要预定义,缩进的方式等,另外功能也很强大,豆瓣就是用python写的.我写的部 ...

随机推荐

  1. android 动画基础绘——view 动画

    前言 对android 动画的整理,android 动画分为view动画(也叫补间动画),帧动画,属性动画. 看到这几个概念,让我想起了flash这东西.如果需要查各种动画具体的含义,那么可以去查询f ...

  2. nsq 从搭建到应用(更新ing)windows

    1.官网下载地址 我安装的是windows nsq-1.2.0.windows-amd64.go1.12.9.tar.gz https://nsq.io/deployment/installing.h ...

  3. python奇淫技巧之 抽屉 自动点赞

    前言 嘿,各位小伙伴晚上好呀,今天又给大家带来干货内容啦,今天带来的是,如何自动登录抽屉,并且点赞 原计划打算,是不打算使用selenium的,但是因为要涉及点赞,所以免不了登录,但是我又被啪啪打脸了 ...

  4. hadoop搭建一:虚拟机网络配置和基础(未完成)

    基于VMware 15+CentOS 7+Hadoop 2.6,hadoop的搭建主要用于个人学习,水平有限. hadoop搭建一:虚拟机网络配置和基础 hadoop搭建二:hadoop全分布搭建 h ...

  5. 尝试用kotlin做一个app(四)

    本来是应该为主页加载数据库数据了,但是想着做后台,之前写jsp后台写吐了,所以先拖几天.把之前的代码完善一下,或者添加些新内容. ...... 多个fragment切换卡顿 首先修正一个bug.从主页 ...

  6. Neo4j--常用的查询语句

    参考 https://www.w3cschool.cn/neo4j 准备工作 插入一堆朝代节点 插入我大明皇帝节点 创建大明皇帝统治大明王朝的关系 看一下结果 WHERE WHERE 语法 WHERE ...

  7. ..\OBJ\CAN.axf: Error: L6411E: No compatible library exists with a definition of startup symbol __main.

    ..\OBJ\CAN.axf: Error: L6411E: No compatible library exists with a definition of startup symbol __ma ...

  8. 滴滴与Uber都盯上拉美市场!一场惨烈竞争谁能胜出?

    创业者最怕的是什么?或许并不是在创业初期的艰难历程.毕竟在初期虽然会遇到很多磨难和众多竞争对手,但只要敢打敢拼就有胜出的可能.创业者最怕的或许是成为所属行业独角兽后,要面对势均力敌对手的凶猛攻击!大家 ...

  9. 网格视图GridView

    1.常用属性 2.Adapter接口 3.Demo演示 今天观看了GridView的相关视频,并且根据案例,进行了代码的编写和实例 新建GridViewActivity.java继承AppCompat ...

  10. 吴裕雄--天生自然 JAVASCRIPT开发学习:函数参数

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...