自学Python-str (object) 方法

Python str方法总结


1


name = ‘alex‘


2


reselt = name.__contains__(‘a‘)


3


print(reselt)


1.返回第一个字母大写

S.capitalize(...)

S.capitalize() -> string


1

2

3

4

>>>a = ‘shaw‘

>>> b = a.capitalize()

>>> print b

Shaw

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 maketrans

suchas = maketrans(‘sm‘,‘@$‘)

>>> s = ‘this is sam\‘s dog‘

>>> s

"this is sam‘s dog"

>>> s.translate(suchas)

"[email protected] [email protected] @a$‘@ dog"

>>> s.translate(suchas,‘dog‘) 去除d,o,g字符

"[email protected] [email protected] @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‘

时间: 2024-08-10 15:01:40

自学Python-str (object) 方法的相关文章

Python标准库:内置函数str(object=&#39;&#39;) str(object=b&#39;&#39;, encoding=&#39;utf-8&#39;, errors=&#39;strict&#39;)

本函数是实现返回字符串对象.参数object是要转换内容的对象:参数encoding是编码方式:errors是错误处理方式. 例子: #str() print(str(b'abc')) print(str(200)) print(str(b'\xe5\x93\x88\xe5\x93\x88', encoding = 'utf-8', errors = 'ignore')) print(str('蔡屋围'.encode('utf-8'), encoding = 'utf-8', errors =

python报错&#39;str&#39; object is not callable

>>> x=1.235 >>> int(x) 1 >>> str="fsgavfdbafdbntsbgbt" >>> len(str) 19 >>> >>> x=987456123 >>> str(x) 会报错'str' object is not callable. str()是系统自带的,你不能在用它的时候自己同时定义一个别的叫做str的变量,这样会冲突.

一:python (int &amp; str 的方法)

1.变量:命名与使用 #!/usr/bin/env/ python # -*- coding:utf-8 -*- name = 'liQM' 只能包含字母.数字或下划线: 第一个字符不能是数字: 简短且具有描述性: 不用关键字或函数名用作变量名,如:(class,break,and,while,for...) 2.字符串:字符串一旦创建,不可修改,修改或者拼接都会创建新的字符串. print('hello world!') "hellow world!"即表示字符串,指引号中的内容 一

Python内建方法

参考: https://docs.python.org/3.4/library/functions.html https://docs.python.org/2/library/functions.html http://blog.csdn.net/jgood/article/details/4371991 以上链接分别为Python官网的3.4版本的内建方法说明.2.X(指2.6和2.7)版本的内建方法说明.以及JGood对2.X版本的内建方法说明的翻译. abs(x) 返回一个数的绝对值.参

Python数据类型及其方法详解

Python数据类型及其方法详解 我们在学习编程语言的时候,都会遇到数据类型,这种看着很基础也不显眼的东西,却是很重要,本文介绍了python的数据类型,并就每种数据类型的方法作出了详细的描述,可供知识回顾. 一.整型和长整型 整型:数据是不包含小数部分的数值型数据,比如我们所说的1.2.3.4.122,其type为"int" 长整型:也是一种数字型数据,但是一般数字很大,其type为"long" 在python2中区分整型和长整型,在32位的机器上,取值范围是-2

python类及其方法

python类及其方法 一.介绍 在 Python 中,面向对象编程主要有两个主题,就是类和类实例类与实例:类与实例相互关联着:类是对象的定义,而实例是"真正的实物",它存放了类中所定义的对象的具体信息. 类有这样一些的优点: 1.类对象是多态的:也就是多种形态,这意味着我们可以对不同的类对象使用同样的操作方法,而不需要额外写代码. 2.类的封装:封装之后,可以直接调用类的对象,来操作内部的一些类方法,不需要让使用者看到代码工作的细节. 3.类的继承:类可以从其它类或者元类中继承它们的

Python -- str 类

Python str类常用方法: class str(object): def capitalize(self):   # 全部字母变小写只有首字母变大写: >>> test = 'PYTHON' >>> test.capitalize() 'Python' def casefold(self): # 全部字母变小写: >>> test = 'PYTHON' >>> test.casefold() 'python' def cente

Python 的一些方法

有关 Python 内编写类的各种技巧和方法(构建和初始化.重载操作符.类描述.属性访问控制.自定义序列.反射机制.可调用对象.上下文管理.构建描述符对象.Pickling). 你可以把它当作一个教程,进阶,或者使用参考:我希望它能够成为一份针对 Python 方法的用户友好指南. 1.介绍 这份指南是几个月内最有价值的 Blog 投稿精华.它的主题是向大家讲述 Python 中的神奇方法. 何为神奇方法呢?它们是面向 Python 中的一切,是一些特殊的方法允许在自己的定义类中定义增加"神奇&

孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5

孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5并学习权限设置 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十二天. 今天继续学习mongoDB的简单操作,并继续对一些可能反复经常使用的操作进行简单的封装.同时通过搜索了解了如何对本地Mongo数据库进行权限设置(没有实践本地数据库的用户权限设置.) 按个人规划,今天是初步了解学习MongoDb数据库的最后一个学习日,后续将在真正使用此数据库时,再对其进行深入研究. 一.今天完成了两个可