Python语言学习:字符串常用的方法
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语言学习:字符串常用的方法的更多相关文章
- Python - 基本数据类型及其常用的方法之字典和布尔值
字典 特点:{"key1": value1, "key2":value2} , 键值对中的值可以为任何数据类型,键不能为列表.字典(无法哈希),布尔值可以为键 ...
- Python - 基本数据类型及其常用的方法之元组
元组 特点:一级元素无法被修改,且不能被增加或者删除. 基本操作: tu = (11, 22, ["aiden", 33, ("qwe", 11)], 77) ...
- python3【基础】-字符串 常用的方法
字符串一个最重要的特性就是不可修改. name.capitalize() 首字母大写 name.casefold() 大写全部变小写 name.center(50,"-") 输出 ...
- Go语言中字符串的查找方法小结
这篇文章主要介绍了Go语言中字符串的查找方法小结,示例的main函数都是导入strings包然后使用其中的方法,需要的朋友可以参考下 1.func Contains(s, substr strin ...
- Python语言学习:列表常用的方法
python 列表常用的方法 1.append( ):用于在列表末尾添加新的对象 list.appent(obj) #obj:添加到列表末尾的对象 #!/usr/bin/python aList = ...
- python字符串常用的方法解析
这是本人在学习python过程中总结的一些关于字符串的常用的方法. 文中引用了python3.5版本内置的帮助文档,大致进行翻译,并添加了几个小实验. isalnum S.isalnum() -> ...
- Python学习入门基础教程(learning Python)--8.3 字典常用的方法函数介绍
本节的主要讨论内容是有关dict字典的一些常用的方法函数的使用和范例展示. 1. clear清除字典数据 语法结构如下: dict_obj.clear() 示例代码如下: dict1 = {'web' ...
- Day2 Python基础学习——字符串、列表、元组、字典、集合
Python中文学习大本营:http://www.pythondoc.com/ 一.字符串操作 一.用途:名字,性格,地址 name = 'wzs' #name = str('wzs')print(i ...
- python语言学习
前段时间要做视频直播需要编写自动模块,就考虑使用python脚本语言,python的好多语法都是很独特的,比如数据类型不需要预定义,缩进的方式等,另外功能也很强大,豆瓣就是用python写的.我写的部 ...
随机推荐
- idea新建java项目
盘符下新建一个目录: 打开idea: Open -> 新建的目录: 右击目录 -> new -> module: 填写模块名 -> finish: file -> pro ...
- 2020PHP面试-SQL篇
一.乐观锁和悲观锁 1.悲观锁是指假设并发更新会发生冲突,不管冲突是否会发生,都会使用锁机制. 优点: 完全保证数据安全. 缺点:锁机制会有额外开销,并发度降低. 可能会产生死锁. 2. 乐观锁是指假 ...
- 给vector对象添加元素的方法
#include<iostream> #include<vector> using namespace std; int main() { //初始化10个元素,每个值都为0 ...
- C++11多线程访问时候的数据保护实例
#include<iostream> #include<thread> #include<string> #include<vector> #inclu ...
- HashMap实现原理(jdk1.7),源码分析
HashMap实现原理(jdk1.7),源码分析 HashMap是一个用来存储Key-Value键值对的集合,每一个键值对都是一个Entry对象,这些Entry被以某种方式分散在一个数组中,这个数 ...
- (day 1)创建项目--1
1.利用cmd(命令行)创建项目myblog 确定好项目要放在哪个directory. dir一下创建好的项目看下有什么 django自带有一个小型的服务器可通过 runserver 启动它 可取浏 ...
- WordPress迁移服务器后报Nginx404的问题
Wordpress迁移服务器后,只有主页能打开,其它页面都显示404 页面无法访问. 出现这个问题是因为我的Wordpress之前用的服务器是apache+PHP组合,换了服务器后变成了Nginx+P ...
- 解决 urxvt “unknown terminal type.”
登录到远程服务器上后,有时执行某些命令会提示unknown terminal type. 这是因为远程ssh不支持urxvt,执行 export TERM=xterm-256color 或者在远程主机 ...
- Element.shadowRoot
Element.shadowRoot http://www.zhuyuntao.cn/shadow-dom的样式/ Shadow DOM的样式 我们已经可以使用原生的操作DOM的方式和使用模板的方式来 ...
- 爬虫防止浏览器防止debug处理
方式一(基于你会前端,我比较喜欢这种方式) #复制html页面 #复制其中的js,css(css可有可无,如果加css和不加css情况不一样,网页可能做了css反爬处理) #全局搜索debug or ...