python-字符串

9 篇文章 0 订阅
3 篇文章 0 订阅
本文介绍了Python中如何检测回文数,以及一系列字符串操作,包括大小写字母转换、对齐方式、查找与替换、判断与截取等。同时,展示了如capitalize、casefold、title等方法的功能,并探讨了字符串的不可变性。
摘要由CSDN通过智能技术生成

回文数:12321

12345这个不是回文数

回文数是序列 它是一个像元组那样不可变的序列

x = "12321"

"是回文数" if x == x[::-1] else "不是回文数"

x = "12345"

"是回文数" if x == x[::-1] else "不是回文数"

《大小写字母互换》

x = "I love FishC"

x.capitalize()

'I love fishc'

(capitalize这个字符串是将首字母变为大写,其他字母变成小写)

返回的并不是源字符串,字符串它是不可变的对象,所以它只是按照这规则来生成一个新的字符串

x = "I love FishC"

x.casefold()

'i love fishc'

(casefold这个字符是所有字母都是小写的新字符串)

x = "I love FishC"

x.title()

'I Love Fishc'

(title这个字符串是将字符串中的每个单词的首字母都变成大写)

《左中右对齐》

x = "有内鬼,停止交易!"

x.center(15)

' 有内鬼,停止交易! ' :多余的部分用空格填充:

(ljust实现的是一个左对齐)

x = "有内鬼,停止交易!"

x.ljust(15)

'有内鬼,停止交易! '

(rjust实现的是一个右对齐)

x = "有内鬼,停止交易!"

x.rjust(15)

' 有内鬼,停止交易!'

实现字符串查找功能的几个方法:

例子:

x = "上海自来水水来自海上"

x.count

x.count("海")

2

(count方法用于查找sub参数指定的子字符串在字符串中出现的次数)

find(sub[,start[,end]])

rfrind(sub[,start[, end]])

(是用于定位sub参数指定的字字符串再字符串中的索引下表值区别在于前者从左往右找后者是从右往左找)

例子:

x = "上海自来水来自海上"

x.find("海")

1

x.rfind

7

index(sub[,start[,end]])

rindex(sub[,start[,end]])

(这两个跟find的两个方法很相似,区别是如果定位不到子字符串,那么处理方式是不一样的)

我们用find来找个字

x.find("龟")

-1

它是会显示-1

而index就不一样了,会报错,看例子

x.index("龟")

Traceback (most recent call last):

File "<pyshell#17>", line 1, in <module>

x.index("龟")

ValueError: substring not found

替换

expandtabs([tabsize=8])

作用是使用空格来替换制表符并且返回一个新的字符串

replace(old,new,count=-1)

(作用是返回一个将所有old的参数指定的子字符串替换为new参数指定的新字符串 count为指定次数 默认值为-1)

"哈哈哈哈干嘛".replace("干嘛","什么") 替换新的字符串

'哈哈哈哈什么'

trabslate(table)

返回一个根据table参数转换后的新字符串这个参数名字叫table (table:表格,用于指定一个转换规则的表格)

table = str.maketrans("ABCDEFG","1234567")

"I love FishC".translate(table)

'I love 6ish3'

判断

startswith(prefix[,start[,end]]))

(用于判断它这个参数指定的子字符串是否出现在字符串的起始位置)

x = "我爱python"

x.startswith("我")

True

x.startswith("哈")

False

endswith(suffix[,start[,end]])

例子:

x = "我爱python"

x.endswith("python")

True

x.endswith("py")

False

x.endswith("py",0,4)

True

istitle()

(判断一个字符串中所有单词是否都是以大写字母开头其余字母均为小写那么可以使用istitle()的方法)

x = "I Iove Python"

x.istitle()

True

issupper

判断一个字符串中是否所有的字母都是大写字母可以使用isupper()的方法

x = "I love python" 从左到右依次进行调用先通过调用upper()方法将字符串全部转换成大写字母的新字符串

x.upper().isupper() 然后再调用isupper()方法来进行判断

True

判断所有字母是否为小写用 islower()方法

判断一个字符串中是否只是有字母构成那么可以使用isalpha()方法

x = "I love python" 有空格,空格不算字符串所以是错的

x.isalpha()

False

把空格去了再来看看

x = "Ilovepython"

x.isalpha()

True

这不就对了吗?!

判断是否为一个空白字符串可以使用isspac()方法

注:并不是只有空格才是空白字符串

判断一个字符串中是否所有字符都是可以打印的可以使用isprintable()方法

x.isprintable()

True

"I love Fish\n".isprintable() 这个为什么错了因为\n转义字符不是一个可以打印的字符

False

isdecimal()

isdigit()

isnumeric()

都是用来判断数字的

x = "12345678784546"

x.isdecimal()

True

x.isdigit()

True

x.isnumeric()

True

isidentifier()

用于判断这个字符串是不是一个合法的python标识符

冷知识:如果你想判断一个字符串是否为python的保留标识符,可以使用keyword模块的iskeyword函数

例子:

mport keyword

keyword.iskeyword("if")

True

keyword.iskeyword("py")

False

截取:

lstrip lstrip(chars=None) None默认值为0

去除左侧空白

" 左侧不要有白色".lstrip()

'左侧不要有白色'

rstrip rstrip(chars=None) None默认值为0

去除右侧空白

"右侧不要有白色 ".rstrip()

'右侧不要有白色'

strip strip(chars=None) None默认值为0

左右都没有空白

" strip ".strip()

'strip'

[

"www.ilovefishc.com".lstrip("wcom.")

'ilovefishc.com'

"www.ilovefishc.com".rstrip("wcom.")

'www.ilovefish'

"www.ilovefishc.com".strip("wocm.")

'ilovefish' ] (大家仔细观察一下有什么不一样的)

它们允许你指定将要删除的前缀或者后缀

removeprefix(prefix)

例子:

"www.ilovefishc.com".removeprefix("www.")

'ilovefishc.com'

removesuffix(suffix)

例子:

"www.ilovefishc.com".removesuffix(".com")

'www.ilovefishc'

这一章内容有点多还没有全部的总结出来,本次内容包含了(回文数、大小写字母互换、左中右对齐、替换、判断、截取等内容)里面还有知识点大家可以记一下。本次学习导航结束,时长3时29分

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值