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

    • 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:新字符串希望的长度

zfill() 函数的注意事项:与字符串的字符没有关系;如果定义的字符串长度小于当前字符串长度,则不会发生变化。

info = “Hello World”

print(info.zfill(10))

print(info.zfill(15))

print(info.zfill(20))

count() 函数

count() 函数的功能:统计字符串出现的次数;或者说返回当前字符串某个成员(元素)出现的次数

count() 函数的用法:str = string.zfill(item) item:查询个数/次数的元素

count() 函数的注意事项:如果查询的成员(元素)不存在,则返回 0

info = ‘’’

Please send this message to those people who mean something to you,to those who have touched your life in

one way or another,to those who make you smile when you really need it,to those that make you see the

brighter side of things when you are really down,to those who you want to let them know that you appreciate

their friendship. And if you don’t, don’t worry,nothing bad will happen to you,you will just miss out on the

opportunity to brighten someone’s day with this message.

‘’’

this_count = info.count(‘this’)

you_count = info.count(‘you’)

love_count = info.count(‘love’)

print('"this"出现的次数为: ’ + str(this_count) + ‘次’)

>>> "this"出现的次数为: 2次

print('"you"出现的次数为: ’ + str(you_count) + ‘次’)

>>> "you"出现的次数为: 11次

print('"love"出现的次数为: ’ + str(love_count) + ‘次’)

>>> "maybe"出现的次数为: 0次

strip()函数

strip() 函数的功能 :去掉字符串两边的指定元素,默认是空格

strip() 函数的用法 :str = string.strip(item) ,括弧里传一个想要去掉的成员(元素),可以不填写

strip() 函数的拓展 :

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

  • lstrip 仅去掉字符串开头的指定元素或者是空格

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

p 仅去掉字符串开头的指定元素或者是空格

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

[外链图片转存中…(img-vpK96lJD-1713692126515)]

[外链图片转存中…(img-0gphuyUB-1713692126516)]

[外链图片转存中…(img-pdsg3YNt-1713692126517)]

[外链图片转存中…(img-9BuF53HY-1713692126518)]

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值