2024年Python零基础入门篇 - 18 - Python字符串常用方法(3)

​                       🍹 测试神器 - Fiddler 篇

​                       🍹 测试神器 - Jmeter 篇

​                       🍹 自动化 - RobotFrameWork 系列

​                       🍹 自动化 - 基于 JAVA 实现的WEB端UI自动化

🍹 自动化 - 基于 MonkeyRunner 实现的APP端UI自动化

​                🤗 2019年之前学习Python留下的乱七八糟系列

🎉🎉欢迎持续关注🎉🎉

文章目录

    • 什么是对象?
  • Python 万物皆是对象

  • 字符串的索引

    • 索引[]
  • 索引[:]

  • 字符串的常用方法

    • find()函数 与 index()函数
  • startswith() 函数与 endswith() 函数

  • capitalize () 函数

    • capitalize()函数小练习
  • casefold()函数与lower()函数

    • casefold()函数与lower()函数 小练习
  • upper() 函数

  • swapcase() 函数

  • zfill() 函数

  • count() 函数

  • strip()函数

  • replace()函数

  • join() 函数

  • split() 函数

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

    • isspace() 函数
  • istitle() 函数

  • isupper() 函数 与 islower() 函数

接下来我们会进入 字符串常用方法的应用阶段,重点学习字符串的内置函数。正式学习之前,我们要先了解一个词 对象 (划重点,不是男女朋友!),只有知道 对象是什么?才能更好的帮助我们接下来的学习。

什么是对象?


对于 Python 来说,对象的概念,更像是身份的概念,我们可以理解为 每一个 变量 其实就是 对象。

  • Python 中一切皆是对象

  • 每个对象都有自己的属性和方法

  • 对象的特点就是它的属性,它的功能就是它的方法,也可以说是函数。比如字符串就有很多内置函数来帮助我们处理字符串。

Python 万物皆是对象


Python里面有一句话:万物解释对象

在编程领域中,通常把现实世界中的实体称为对象,例如:

  • 香蕉、苹果、橘子

  • 男人、女人、小孩

  • 飞机、地铁、突突车

  • 平房、楼房、小别墅

对象指的是一个具体的实体,不用于指代一个抽象的群体(或者也可以说是一个实体所处的群体)

  • 香蕉是一个具体的水果,所以可以说香蕉是一个对象

  • 它是一种水果,但水果是一个抽象的概念,指的是一群可食用的含水分和糖分较多的植物果实

  • 你可以说,香蕉、苹果、橘子是水果,但是不能说水果就只能是香蕉、只能是苹果、只能是橘子…

  • 所以不能说水果是一个对象

类似的,飞机、地铁这些具体的交通工具可以被称为对象,但是不能说交通工具是一个对象

字符串的索引


学习字符串的常用方法之前,我们再来吻戏一下字符串的索引

索引[]

通过索引 [] 获取字符串中指定位置的字符,示例如下:

s = ‘Python’

s[0]

‘P’

s[1]

‘y’

s[2]

‘t’

s[3]

‘h’

s[4]

‘0’

s[5]

‘n’

  • 在 Python 中,单个字符也被当作字符串来处理,即该字符串只包含一个字符

  • 在第 2 行,获取字符串 s 的第 0 个字符 ‘P’

  • 在第 4 行,获取字符串 s 的第 1 个字符 ‘y’

  • 在第 6 行,获取字符串 s 的第 1 个字符 ‘t’

  • 在第 8 行,获取字符串 s 的第 1 个字符 ‘h’

  • 在第 10 行,获取字符串 s 的第 1 个字符 ‘o’

  • 在第 12 行,获取字符串 s 的第 1 个字符 ‘n’

索引[:]

在 Python 中,使用语法 string [start:end],获取字符串 string 中在 [start, end) 范围的子字符串。

注意范围 [start, end) 包含 start,不包含 end。也可以理解为是列表的 左闭右开原则

举例如下:

s = ‘Python’

s[1]

‘y’

s[2]

‘t’

s[3]

‘h’

s[0:5]

‘Pytho’

  • 在第 2 行,获取字符串 s 的第 1 个字符 ‘m’

  • 在第 4 行,获取字符串 s 的第 2 个字符 ‘o’

  • 在第 6 行,获取字符串 s 的第 3 个字符 ‘o’

  • 在第 8 行,获取字符串 s 中从 1 开始、到 4 结束的字符串 ‘mooc’,使用 s [1:4] 表示该范围,注意该范围包括字符串的第 1 个字符、不包括第 4 个字符。

字符串的常用方法


find()函数 与 index()函数

find() 函数与 index() 函数的功能:都是返回你想找的成员(元素)的位置

find() 函数的用法:str = string.finde(item) item:想要查询匹配的元素,返回一个整型

index() 函数的用法:str = string.index(item) item:想要查询匹配的元素,返回一个整型或者报错

附:字符串里的位置是从左向右从下标位[0]开始计算

find() 函数与 index() 函数的区别:

  • 如果 find() 函数 找不到c成员(元素),会返回 -1

  • 如果 index()函数 找不到成员(元素),会导致程序报错

info = “Python is good code”

print(info.find(“P”))

print(info.find(“good”))

print(info.find(“Java”))

>>> 0

>>> 10

>>> -1

info = “Python is good code”

print(info.index(“P”))

print(info.index(“good”))

print(info.index(“Java”)) # 直接报错(语法错误) ‘ValueError: substring not found’

>>> 0

>>> 10

startswith() 函数与 endswith() 函数

startswith() 函数的功能:判断字符串 开始位 是否是某成员(元素),可以指定统计的范围,[start,end) 左闭区间右开区间

startswith() 函数的用法:str = string.startswith(item) item:想要查询匹配的元素,返回一个布尔值

endswith() 函数的功能:判断字符串 结尾 是否是某成员(元素),可以指定统计的范围,[start,end) 左闭区间右开区间

startswith() 函数的用法:str = string.endswith(item) item:想要查询匹配的元素,返回一个布尔值

示例如下:

info = ‘Python is good’

print(info.startswith(‘Python’))

print(info.startswith(‘Java’))

print(info.endswith(‘good’))

print(info.endswith(‘bad’))

>>> True

>>> False

>>> True

>>> False

string_test = “this is string example”

print(string_test.startswith(‘this’)) # 字符串是否以 this 开头

print(string_test.startswith(‘string’, 8)) # 从第九个字符开始的字符串是否以 string 开头

print(string_test.startswith(‘this’, 2, 4)) # 从第2个字符开始到第四个字符结束的字符串是否以 this 开头

>>> True

>>> True

>>> False

capitalize () 函数

capitalize 的功能 : 将字符串的首字母大写

capitalize 的用法:str = string.capitalize() ;

示例如下:

str = ‘string’

str.capitalize()

‘String’

capitalize() 的注意事项:

  • 只对首字母有效

  • 只对字母有效

  • 已经是大写,则无效



capitalize()函数小练习

将han meimei转换成规范的英文名字,打印实现姓、名首字母都是大写

name_1=“han”

name_2=“meimei”

print(name_1.capitalize() + ’ ’ +name_2.capitalize())

>>> 输出结果 ‘Han Meimei’

casefold()函数与lower()函数

casefold()函数与lower()函数 的功能 : 将字符串的全体字符小写

casefold()函数与lower()函数 的用法:str = string.casefold() , str = string.lower() ;

示例如下:

str_01 = ‘Hello’

str_01.casefold()

‘hello’

str_02 = ‘World’

str_02.lower()

‘world’

casefold()函数与lower()函数 的注意事项:

  • 只对字符串的字母有效

  • 已经是小写的字母无效

chinese = “你好,世界”

english = “Hello,World”

test_str = “test@1.com$OK”

print(chinese.casefold())

print(chinese.lower())

print(english.casefold())

print(english.lower())

print(test_str.casefold())

print(test_str.lower())

既然 casefold()函数与lower()函数 都可以将字符串的全体字符转为小写,那么又有什么区别呢?

其实还是有区别的,lower()函数是很早之前就存在的将字符串小写的方法,而casefold()函数则是 Python3.3版本之后才引入的小写方法。lower()函数是将英文字符进行小写,但是对德语等其他非英语字符就失去了效果,这个时候就是 casefold() 函数大显身手的时候了。

casefold()函数与lower()函数 小练习

将下列三个验证码全部转为 小写

str_1 = “NAh8”

str_2 = “Sn6H”

str_3 = “HKFM”

str_1 = “NAh8”

str_2 = “Sn6H”

str_3 = “HKFM”

print (str_1.lower())

print (str_2.casefold())

print (str_3.lower())

upper() 函数

upper() 函数的功能:将字符串全体大写

upper() 函数的用法:str = string.upper()

示例如下:

str = ‘string’

str.upper()

‘STRING’

capitalize 的注意事项:

  • 只对字符串的字母有效

  • 已经是大写的字母无效

str_test = ‘Hello World’

print(str_test.upper())

>>> ‘HELLO WORLD’

swapcase() 函数

swapcase() 函数的功能:将字符串中的字符进行大小写转换

swapcase() 函数的用法:str = string.swapcase()

swapcase() 函数的注意事项:只对字符串的字母有效

info_one = ‘Python is good’

info_two = ‘pthon web is so esay’

print(info_one.swapcase())

print(info_two.swapcase())

zfill() 函数

zfill() 函数的功能:为字符串定义长度,如果现有字符串长度不满足,缺少的部分自动用 0 补齐

zfill() 函数的用法:str = string.zfill(width) width:新字符串希望的长度

最后

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

👉Python所有方向的学习路线👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

👉Python必备开发工具👈

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

👉Python全套学习视频👈

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

👉实战案例👈

学python就与学数学一样,是不能只看书不做题的,直接看步骤和答案会让人误以为自己全都掌握了,但是碰到生题的时候还是会一筹莫展。

因此在学习python的过程中一定要记得多动手写代码,教程只需要看一两遍即可。

👉大厂面试真题👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 28
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值