Python str方法总结
1.返回第一个字母大写
S.capitalize(...)
S.capitalize() -> string
|
1
2
3
4
|
>>>a = 'shaw'>>> b = a.capitalize()>>> print bShaw |
2.按指定长度填充特定字符
center(...)
S.center(width[, fillchar]) -> string
|
1
2
3
4
5
6
7
|
>>> a = 'linux'>>> print a.center(7,'h')hlinuxh>>> print a.center(8,'h')hlinuxhh>>> print a.center(9,'h')hhlinuxhh |
3.查找某字符串出现的次数
count(...)
S.count(sub[, start[, end]]) -> int
|
1
2
3
4
5
6
7
8
9
|
>>> a = "this is my dog, i love this dog and it's a good dog!">>> print a.count('dog')3>>> print a.count('dog',15)2>>> print a.count('dog',15,30)0>>> print a.count('dog',15,32)1 |
4.以指定的编码格式解码字符串。默认编码为字符串编码(适合python2中处理中文)
decode(...)
S.decode([encoding[,errors]]) ->object
|
1
2
3
|
b = 'strid'>>> b.decode('utf-8')u'strid' |
5.用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True,否则返回False。可选参数"start"与"end"为检索字符串的开始与结束位置
endswith(...)
S.endswith(suffix[,start[, end]]) ->bool
|
1
2
3
4
5
6
7
|
>>> shaw = 'I am shaw,what\'s your name ?'>>> shaw.endswith('?')True>>> shaw.endswith('w',7,9)True>>> shaw.endswith('w',7,8)False |
6.把字符串中的 tab 符号('\t')转为空格,tab 符号('\t')默认的空格数是8,tabsize -- 指定转换字符串中的 tab 符号('\t')转为空格的字符数。
expandtabs(...)
S.expandtabs([tabsize])-> string
|
1
2
3
4
5
6
7
|
>>> info = 'today is a good d\tay'>>> print info.expandtabs()today is a good d ay>>> print info.expandtabs(4) # 把tab装换成4个空格today is a good d ay >>> printinfo.expandtabs(1)today is a good d ay # 把tab装换成1个空格 |
7.检测字符串中是否包含子字符串 str ,如果指定 beg(开始)和 end(结束)范围,则检查是否包含在指定范围内,如果包含子字符串,则返回开始的索引值,否则返回-1。
find(...)
S.find(sub [,start [,end]])-> int
|
1
2
3
4
5
6
7
|
>>> a = 'stivenwang'>>> a.find('w')6>>> a.find('w',9)-1>>> a.find('w',9,11)-1 |
8.格式换字符串输出(方法与%相似,但可以指定顺序)
format(...)
S.format(*args, **kwargs)-> string
|
1
2
3
4
5
6
7
8
|
>>> name = 'StivenWang'>>> fruit = 'apple'>>> print 'my name is {},I like {}'.format(name,fruit)my name is StivenWang,I like apple>>> print 'my name is {1},I like {0}'.format(fruit,name)my name is StivenWang,I like apple>>> print 'my name is {mingzi},I like{shuiguo}'.format(shuiguo=fruit,mingzi=name)my name is StivenWang,I like apple |
9.检测字符串string中是否包含子字符串 str ,如果存在,则返回str在string中的索引值,如果指定beg(开始)和 end(结束)范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常(ValueError: substring not found)。
index(...)
S.index(sub [,start [,end]])-> int
|
1
2
3
4
5
6
7
8
|
>>> str1 = "this is string example....wow!!!">>> str2 = "exam">>> print str1.index(str2)15>>> print str1.index(str2,20)Traceback (most recent call last): File "<input>",line 1, in <module>ValueError: substringnot found报错 |
10.检测字符串是否由字母或数字组成。
isalnum(...)
S.isalnum() -> bool
|
1
2
3
4
5
6
7
8
9
10
11
12
|
>>> a = '123'>>> a.isalnum()True>>> b = 'shaw'>>> b.isalnum()True>>> c = 'shaw123'>>> c.isalnum()True>>> d = 'th 123'>>> d.isalnum()False |
11.检测字符串是否只由字母组成
isalpha(...)
S.isalpha() -> bool
|
1
2
3
4
5
6
7
8
9
10
11
12
|
>> a = '123'>>> a.isalpha()False>>> b = '123shaw'>>> b.isalpha()False>>> c = 'shaw'>>> c.isalpha()True>>> d = 'sha w'>>> d.isalpha()False |
12.检测字符串是否只由数字组成。
isdigit(...)
S.isdigit() -> bool
|
1
2
3
4
5
6
7
8
9
|
>>> a = '123'>>> a.isdigit()True>>> b = 'shaw'>>> b.isdigit()False>>> c = '123shaw'>>> c.isdigit()False |
13.检测字符串是否由小写字母组成。
islower(...)
S.islower() -> bool
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
>>> a = 'shaw'>>> a.islower()True>>> b = '123'>>> a.islower()True>>> c = '123shaw'>>> c.islower()True>>> d = 'SHAW'>>> d.islower()False>>> e = '123SHAW'>>> e.islower()False |
14.检测字符串是否只由空格组成。
isspace(...)
S.isspace() -> bool
|
1
2
3
4
5
6
7
8
9
|
>>> a = ' '>>> a.isspace()True>>> a = '123'>>> a.isspace()False>>> a = 'shaw'>>> a.isspace()False |
15.检测字符串中所有的单词拼写首字母是否为大写,且其他字母为小写。
istitle(...)
S.istitle() -> bool
|
1
2
3
4
5
6
7
8
9
|
>>> a = 'Shaw'>>> a.istitle()True>>> a = 'Shaw123'>>> a.istitle()True>>> a = '123'>>> a.istitle()False |
16.检测字符串中所有的字母是否都为大写
isupper(...)
S.isupper() -> bool
|
1
2
3
4
5
6
7
8
9
10
11
12
|
>>> a = '123'>>> a.isupper()False>>> a = 'Shaw'>>> a.isupper()False>>> a = 'Shaw123'>>> a.isupper()False>>> a = 'SHAW123'>>> a.isupper()True |
17.用于将序列中的元素以指定的字符连接生成一个新的字符串。
join(...)
S.join(iterable) ->string
|
1
2
3
4
|
>>> a = '-'>>> b = 'shaw'>>> print a.join(b)s-h-a-w |
18.返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串。
ljust(...)
S.ljust(width[, fillchar])-> string
width -- 指定字符串长度
fillchar -- 填充字符,默认为空格
|
1
2
3
4
5
|
>>> s = 'shaw'>>> s.ljust(10)'shaw '>>> s.ljust(10,'8')'shaw888888' |
19.转换字符串中所有大写字符为小写。
Lower(...)
S.lower() -> string
|
1
2
3
4
5
6
|
>>> s = 'PYTHON'>>> s.lower()'python'>>> s = 'PYTHON123'>>> s.lower()'python123' |
20.用于截掉字符串左边的空格或指定字符。
lstrip(...)
S.lstrip([chars]) ->string or unicode
|
1
2
3
4
5
6
|
>>> s = '%%%shaw'>>> s.lstrip('%')'shaw'>>> s = ' shaw'>>> s.lstrip()'shaw' |
21.根据指定的分隔符将字符串进行分割(返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串)
partition(...)
S.partition(sep) ->(head, sep, tail)
|
1
2
3
|
>>> S = 'are you know:lilin is lowser'>>> S.partition('lilin')('are you know:', 'lilin', ' is lowser') |
22.把字符串中的 old(旧字符串)替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
replace(...)
S.replace(old, new[,count]) -> string
|
1
2
3
|
>>> S = 'shaw'>>> S.replace('sh','LI')'LIaw' |
23.返回字符串最后一次出现的位置,如果没有匹配项则返回-1。
rfind(...)
S.rfind(sub [,start[,end]]) -> int
str -- 查找的字符串
beg -- 开始查找的位置,默认为0
end -- 结束查找位置,默认为字符串的长度。
|
1
2
3
4
5
|
>>> s = 'lilin is good li lao ban'>>> s.rfind('li')14>>> s.rfind('li',0,8)2 |
24.返回子字符串 str 在字符串中最后出现的位置,如果没有匹配的字符串会报异常,你可以指定可选参数[beg:end]设置查找的区间。
rindex(...)
S.rindex(sub [,start[,end]]) -> int
语法:
str.rindex(str,beg=0 end=len(string))
|
1
2
3
4
5
6
7
8
9
|
>>> s = 'my name is shaw'>>> s.rindex('s')11>>> s.rindex('s',5,10)9>>> s.rindex('s',2,8)Traceback (most recent call last): File "<input>",line 1, in <module>ValueError: substring not found |
25.返回的原/新字符串右对齐,且默认使用空格填充至指定长度(width)的新字符串。如果指定的长度(width)小于原字符串的长度则返回原字符串
rjust(...)
S.rjust(width[, fillchar])-> string
语法:
str.rjust(width[,fillchar])
width -- 指定填充指定字符后新字符串的总长度.
fillchar– 要填充的字符,默认为空格。
|
1
2
3
4
5
6
7
|
>>> s = 'sch'>>> s.rjust(20)' sch'>>> s.rjust(20,'0')'00000000000000000sch'>>> s.rjust(20,'H')'HHHHHHHHHHHHHHHHHsch' |
26.删除 string 字符串末尾的指定字符(默认为空格).
rstrip(...)
S.rstrip([chars]) ->string or unicode
语法:
str.rstrip([chars])
|
1
2
3
|
>>> s = 'shaw\n'>>> s.rstrip('\n')'shaw' |
27.通过指定分隔符对字符串进行切片,如果参数num有指定值,则仅分隔 num 个子字符串
split(...)
S.split([sep [,maxsplit]])-> list ofstrings
语法:
str.split(str="",num=string.count(str)).
|
1
2
3
4
5
|
>>> s = 'shaw\nlinux\nmac'>>> s.split('\n')['shaw', 'linux', 'mac']>>> s.split('\n',1)['shaw', 'linux\nmac'] |
28.按照行分隔,返回一个包含各行作为元素的列表,如果 num 指定则仅切片 num 个行.
splitlines(...)
S.splitlines(keepends=False)-> list ofstrings
语法:
str.splitlines( num=string.count('\n'))
num -- 分割行的次数。
|
1
2
3
4
5
6
|
>>> s = 'what\'s your name?\n my name is shaw\n how old areyou?'>>> s.splitlines()["what's your name?", ' my name is shaw', ' how old areyou?']>>> s.splitlines(1)["what's your name?\n", ' my name is shaw\n', ' how old areyou?']>>> s.splitlines(3) |
29.用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end指定值,则在指定范围内检查。
startswith(...)
S.startswith(prefix[,start[, end]]) ->bool
语法:
str.startswith(str,beg=0,end=len(string))
str -- 检测的字符串。
strbeg -- 可选参数用于设置字符串检测的起始位置。
strend -- 可选参数用于设置字符串检测的结束位置。
|
1
2
3
4
5
|
>>> s = 'my name is shaw'>>> s.startswith('my')True>>> s.startswith('my',10,15)False |
30.用于移除字符串头尾指定的字符(默认为空格)。
strip(...)
S.strip([chars]) ->string or unicode
|
1
2
3
|
>>> s = 'my name is sam'>>> s.strip('m')'y name is sa' |
31.用于对字符串的大小写字母进行转换(小写转大写,大写转小写)
swapcase(...)
S.swapcase() -> string
|
1
2
3
4
5
6
|
>>> s = 'stiven'>>> s.swapcase()'STIVEN'>>> s = 'SHAW'>>> s.swapcase()'shaw' |
32.返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写。
title(...)
S.title() -> string
|
1
2
3
|
>>> s = 'my name is shaw'>>> s.title()'My Name Is Shaw' |
33.根据参数table给出的表(包含 256 个字符)转换字符串的字符, 并返回翻译后的字符串。要过滤掉的字符放到del 参数中
translate(...)
S.translate(table [,deletechars])->string
语法:
str.translate(table[, deletechars])
table -- 翻译表,翻译表是通过maketrans方法转换而来。
deletechars -- 字符串中要过滤的字符列表。
|
1
2
3
4
5
6
7
8
9
|
>>> from string import maketranssuchas = maketrans('sm','@$')>>> s = 'this is sam\'s dog'>>> s"this is sam's dog">>> s.translate(suchas)"thi@ i@ @a$'@ dog">>> s.translate(suchas,'dog') 去除d,o,g字符"thi@ i@ @a$'@ " |
34.将字符串中的小写字母转为大写字母
upper(...)
S.upper() -> string
|
1
2
3
4
5
6
7
8
9
|
>>> s = 'sam'>>> s.upper()'SAM'>>> s = '23sam'>>> s.upper()'23SAM'>>> s = '23s am'>>> s.upper()'23S AM' |
Python str方法总结的更多相关文章
- python str方法之ljust、rjust、center
# -*- coding: cp936 -*- #python 27 #xiaodeng #str方法之ljust.rjust.center #http://www.runoob.com/python ...
- python - str和repr方法:
# python 内置__str__()和__repr__()方法: #显示自定制 # 示例1 # a = 123 # print(a.__str__()) # 示例2 class Test(): d ...
- #python str.format 方法被用于字符串的格式化输出。
#python str.format 方法被用于字符串的格式化输出. #''.format() print('{0}+{1}={2}'.format(1,2,3)) #1+2=3 可见字符串中大括号内 ...
- Python之str方法
# -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之str方法 #http://python.jobbole.com/82655/ #str为一个 ...
- Python 字典(Dictionary) str()方法
Python 字典(Dictionary) str()方法 描述 Python 字典(Dictionary) str() 函数将值转化为适于人阅读的形式,以可打印的字符串表示.高佣联盟 www.cge ...
- python repr方法和str方法
每个类都有默认的__repr__, __str__方法,用print 实例时调用类的str方法,直接输出类的实例,调用的是类的repr方法 在命令行界面,不用print命令打印而是直接写变量名,就是用 ...
- Python swapcase()方法
首先,要明白Python swapcase() 方法用于对字符串的大小写字母进行转换. 其次,了解swapcase()方法语法:str.swapcase() 返回值:返回大小写字母转换后生成的新字符串 ...
- Python capitalize()方法
Python capitalize()方法 capitalize()方法返回字符串的一个副本,只有它的第一个字母大写.对于8位的字符串,这个方法与语言环境相关. 语法 以下是capitalize()方 ...
- Python 字符串方法详解
Python 字符串方法详解 本文最初发表于赖勇浩(恋花蝶)的博客(http://blog.csdn.net/lanphaday),如蒙转载,敬请保留全文完整,切勿去除本声明和作者信息. ...
随机推荐
- mysql 批量更新和批量插入
1. 批量更新 update table_name set field_name = CASE id WHEN id1 THEN field_value, WHEN id1 THEN field_ ...
- json_decode时含有中文是解码问题(json_decode返回为null)
function myDecode($str){ $str = substr(str_replace('\"','"',json_encode($str)),1,-1); retu ...
- cd hit使用
~~和唐老师一个实验室的人开发的~~ CD-HIT is a very widely used program for clustering and comparing protein or nucl ...
- Error:(1, 0) Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory. See http://b.android.com/9574
这个一般是因为你打开的项目所在的目录存在中文,把项目换到全英文目录下就没问题了
- UVa 二叉树重建(先序+中序求后序)
题意是给出先序和中序,求出后序. 先序遍历先访问根结点,通过根结点可以在中序中把序列分为左子树部分和右子树部分,我建了一个栈,因为后序遍历最后访问根结点,所以把每次访问的根结点放入栈中.因为后序遍历先 ...
- C#项目实例中读取并修改App.config文件
C#项目是指一系列独特的.复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间.预算.资源限定内,依据规范完成.项目参数包括项目范围.质量.成本.时间.资源. 1. 向C#项目实 ...
- Java 报表之JFreeChart(第二讲)
1.利用 JFreeChart 创建按颜色分类的水果销售报表 package com.wcy.chart.bar; import javax.servlet.http.HttpSession; imp ...
- MPI运行程序(接触)
网友遇到的问题并解决问题:mpich2在多个节点上运行并行程序时出错 我使用mpich2时遇到一下问题: 当我运行一个计算圆周率的并行程序cpi.c时,我想在指定的若干个节点上运行这个程序,比如hos ...
- 怎么使用jquery判断一个元素是否含有一个指定的类(class)
在jQuery中可以使用2种方法来判断一个元素是否包含一个确定的类(class).两种方法有着相同的功能.2种方法如下:(个人喜欢用hasClass()) 1. hasClass( ...
- 【C】 05 - 声明和定义
仅从形式上看,C程序就是由各种声明和定义组成的.它们是程序的骨架和外表,不仅定义了数据(变量),还定义了行为(函数).规范中的纯语言部分,声明和定义亦花去了最多的篇幅.完全说清定义的语法比较困难,这里 ...