亲宝软件园·资讯

展开

python字符串操作

短尾巴小鳄鱼 人气:0

前言

在介绍字符串的常见操作之前,先简单介绍一下“对象”这个词,对象是个很抽象的东西,目前只需要简单理解,随着知识的增加,会更加深入的理解什么是对象。

python中的对象

什么是对象?

python中的一切都是对象

如果我们将人类看作变量,每一个人类都是一个变量;将高级动物比作对象,而人类都是高级动物,即每个变量都是对象。

每个对象都有各自的属性与方法。

人类中有警察、医生等,我们可以将警察的看作对象的属性,警察抓人看作对象的功能方法。

字符串的capitalize()函数

capitalize()的功能

将字符串的首字母大写,其他字母小写

capitalize()的用法

newstr = string.capitalize()  # 其中,string是想要将首字母大写的字符串,括弧内什么都不用填写

注意:capitalize()只是字符串的函数,不能用于其他数据类型,且只适用与英文字母开头的字符串(因为英文字母才有大小写)。

例子:

字符串的小写内置函数

下面两个函数的功能都是将字符串全体小写

两个函数都只对字符串中的大写字母有效

newstr = string.casefold()  # 括弧内什么都不用填写
newstr = string.lower()  # 括弧内什么都不用填写

casefold()lower()函数的区别:casefold()对一些小语种如德语等也生效

例子:

字符串的upper()函数

与lower相反,upper()函数是将字符串全体大写

只对字符串中的小写字母有效

new_str = string.upper()  # 括弧内什么都不用填写

例子:

字符串的swapcase()函数

将字符串中大小写字母进行转换,字符串中大写全变小写,小写全变大写

只对字符串中的字母有效果

newstr = string.swapcase()  # 括弧内什么都不用填写

例子:

字符串的zfill()函数

为字符串定义长度,如不满足,缺少的部分用0填补

例如一个字符串'xiaoming',长度为8,我要将这个字符串的长度定义为10,用zfill将该字符串补成10个长度

newstr = string.zfill(width)  # 括弧内参数为新字符串希望的长度

如果希望新字符串的长度比原字符串小,则不会有任何效果。

例子:

字符串中的count()函数

返回字符串中的某个字符的个数

info = string.count(item)  # 括弧内参数填想要查询个数的元素,返回一个整型

如果查询的元素不存在,则返回0。

例子:

字符串中startswith()与endswith()函数

ret1 = string.startswith(item)  # item为想要判断的元素,返回一个布尔值
ret2 = string.endswith(item)  # item为想要判断的元素,返回一个布尔值

例子:

扩展:

starswith()endsswith()还可以传入初始位置与结束位置,用于指定想要查询的字符串的起始于结尾位置。

str_1 = "My name is xiaoming, I'm from BeiJing."
print (str_1.startswith( 'string', 8 ))  # 从第九个字符开始的字符串是否以 string 开头
print (str_1.endswith( 'is ', 2, 10 )) # 从第2个字符开始到第十个字符结束的字符串是否以 is  结尾

字符串中的find()与index()函数

find()index()都是返回你想寻找的成员的位置

ret = string.find(item)   # item是想查找的元素,返回一个整型
ret = string.index(item)  # item是想查找的元素,返回一个整型或报错
# 字符串里的位置是从左向右,以0开始的

find()如果找不到查找的元素,会返回-1

index()如果找不到查找的元素,会报错

例子:

index()找不到元素会报错:

字符串中的strip()函数

去掉字符串左右两边指定的元素,默认是去掉空格

newstr = string.strip(item)  # 括弧里可以不填写,也可以传一个想要去掉的元素

传入的元素如果不在开头或结尾则无效:

例子:

字符串中的replace()函数

将字符串中旧的元素替换成新的元素,并能指定替换的数量

string.replace(old, new, max)
"""
old:被替换的元素
new:替代old的新元素
max:可选,代表替换几个,默认全部替换全部匹配的old元素
"""

例子:

扩展:

replace()支持书写到一行,因为repalce()返回的是一个字符串,对这个字符串继续进行repalce()处理是可以的:

字符串中返回bool类型的函数

isspace()函数

判断字符串是否是一个由空格组成的字符串

ret = string.isspace()  # 括弧内不填内容,返回true或false

istitle()函数

判断字符串是否是标题类型(首字母大写,其余部分是小写),只适用于英文

ret = string.istitle()  # 括弧内不填内容,返回true或false

isupper()与islower()函数

判断字符串是否都是大写或都是小写,只检测字母

ret = string.isupper()  # 括弧内不填内容,返回true或false
ret = string.islower()  # 括弧内不填内容,返回true或false

加载全部内容

相关教程
猜你喜欢
用户评论