Python基础核心经典教程(016)——字符串
发布日期:2021-06-30 11:11:34 浏览次数:3 分类:技术文章

本文共 5093 字,大约阅读时间需要 16 分钟。


版权声明

  • 本文原创作者:谷哥的小弟
  • 作者博客地址:http://blog.csdn.net/lfdfhl

概述

字符串是 Python 中最常用的数据类型;简而言之,字符串用于表示一串字符。通常情况下,在Python 中可以使用一对双引号 " "或者一对单引号 ' '定义字符串。假若字符串中存在特殊字符,则可以使用" 或者 ’ 做字符串的转义,但在实际开发中:

  • 如果字符串内部需要使用 ",则可以使用一对双引号 " "定义字符串
  • 如果字符串内部需要使用 ',则可以使用一对单引号 ' '定义字符串

在某些特殊情况下,还可以使用三对双引号 """ """或者三对单引号 ''' '''定义字符串;在此方式下,引号中的字符可换行。

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串的定义"""# 定义字符串country = "中华人民共和国"city = '石家庄'hi = "I’m rose"hello = """My name is lucy,nice to meet you"""bye = '''OK,bye'''print(country)print(city)print(hi)print(hello)print(bye)

在这里插入图片描述

字符串的下标

在Python 中字符串中每个字符都有一个对应的下标(索引),下标从0开始依次递增。所以,我们可使用下标获取字符串中指定位置的字符。

语法如下:

字符串[下标]

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""# 定义字符串country = "China"# 依据下标获取字符串中的字符print(country[0])print(country[1])print(country[2])print(country[3])print(country[4])

在这里插入图片描述

除此以外,还常使用for循环遍历字符串。

语法如下:

for 遍历 in 字符串:    .............    .............    .............

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""# 定义字符串country = "China"# 利用for循环遍历字符串for i in country:    print(i)

在这里插入图片描述

字符串的长度

在Python 中看使用字符串的len( )方法获取字符串的长度(字符的个数)

语法如下:

len(字符串)

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""# 定义字符串country = "China"# 计算字符串的长度length = len(country)print("字符串的长度为:%d" % length)

在这里插入图片描述

小结

字符串的长度=字符串中字符的索引的最大值 + 1

字符串常用方法

在此,按照类别介绍字符串的常用方法。

大小写转换

方法 说明
capitalize() 将字符串的第一个字符大写
title() 将字符串中每个单词的首字母大写
lower() 转换字符串中所有大写字符为小写
upper() 转换字符串中的小写字母为大写
swapcase() 翻转字符串中的大小写

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""sentence = "hi,I love you,Lucy"result = sentence.capitalize()print(result)result = sentence.title()print(result)result = sentence.lower()print(result)result = sentence.upper()print(result)result = sentence.swapcase()print(result)

在这里插入图片描述

去除字符串空白字符

方法 说明
lstrip() 去除字符串左边的空白字符
rstrip() 去除字符串右边的空白字符
strip() 去除字符串左右两边的空白字符
"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""sentence = " hello  "print(sentence)print("字符串原始长度为:%d" % len(sentence))result = sentence.lstrip()print(result)print("字符串长度为:%d" % len(result))result = sentence.rstrip()print(result)print("字符串长度为:%d" % len(result))result = sentence.strip()print(result)print("字符串长度为:%d" % len(result))

在这里插入图片描述

判断操作

方法 说明
startswith() 假若字符串以指定子串开头则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内判断。
endswith() 假若字符串以指定子串结尾则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内判断。
isspace() 假若字符串中只包含空格,则返回 True ,否则返回 False
isalnum() 假若字符串中所有字符都是字母或数字则返回 True,否则返回 False
isalpha() 假若字符串中所有字符都是字母则返回 True,否则返回 False
isdecimal() 假若字符串中所有字符都是数字则返回 True,否则返回 False
istitle() 假若字符串是标题化的(每个单词的首字母大写)则返回 True,否则返回 False
islower() 假若字符串中每个字符都是小写,则返回 True ,否则返回 False
isupper() 假若字符串中每个字符都是大写,则返回 True ,否则返回 False

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""sentence = "hello,nice to meet you"result = sentence.startswith("hello")print(result)result = sentence.endswith("you")print(result)result = sentence.startswith("hello", 0, 3)print(result)result = sentence.endswith("you", 2, 8)print(result)sentence = "    "result = sentence.isspace()print(result)sentence = "hello9527*"result = sentence.isalnum()print(result)sentence = "1949"result = sentence.isdecimal()print(result)sentence = "I Love You"result = sentence.istitle()print(result)sentence = "hi,tom"result = sentence.islower()print(result)sentence = "LOVE"result = sentence.isupper()print(result)

在这里插入图片描述

文本对齐

方法 说明
string.ljust(width) 返回与原字符串左对齐并使用指定字符填充至长度 width 的新字符串
string.rjust(width) 返回与原字符串右对齐并使用指定字符填充至长度 width 的新字符串
string.center(width) 返回与原字符串居中并使用指定字符填充至长度 width 的新字符串

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""sentence = "nice"result = sentence.ljust(10, "*")print(result)result = sentence.rjust(10, "*")print(result)result = sentence.center(10, "*")print(result)

在这里插入图片描述

查找和替换

方法 说明
find() 检测字符串是否包含子串。如果包含就返回位置下标;否则返回-1。如果指定检测范围,则在该访问内判断
rfind() 该方法类似于 find(),只不过是从右边开始查找
index() 该方法类似于 find() ,只不过当子串不在字符串中时会报错
rindex() 该方法类似于index(),只不过是从右边开始
count() 统计子串在字符串中出现的次数
replace(old_str, new_str, num) 将字符串中的 old_str 替换成 new_str;如果指定了num,则替换次数不超过 num

示例

"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""sentence = "hello,nice to meet you"result = sentence.find("hello")print(result)result = sentence.rfind("hello")print(result)result = sentence.index("hello")print(result)result = sentence.rindex("hello")print(result)result = sentence.count("o")print(result)result = sentence.replace("o", "c")print(result)result = sentence.replace("o", "c", 1)print(result)

在这里插入图片描述

合并与拆分

方法 说明
join() 使用连接符将多个子串合并成新的字符串
split() 将字符串按照指定规则拆分成多个子串
splitlines() 按照行(’\r’, ‘\n’, ‘\r\n’)分割字符串
partition(str) 依据子串把字符串拆分成三部分(str前, str, str后)
rpartition(str) 该方法类似于partition() ,只不过不过是从右边开始查找
"""原创作者:谷哥的小弟博客地址:http://blog.csdn.net/lfdfhl示例描述:字符串常用方法"""names = ["lucy", "tom", "rose"]sentence = "-".join(names)print(sentence)sentence = "lucy-tom-rose"result = sentence.split("-")print(result)sentence = "lucyandtomandrose"result = sentence.split("and")print(result)sentence = """hello,My name is lucy"""result = sentence.splitlines()print(result)sentence = "lucy-tom-rose"result = sentence.partition("tom")print(result)sentence = "lucy-tom-rose"result = sentence.rpartition("tom")print(result)

在这里插入图片描述

转载地址:https://it9527.blog.csdn.net/article/details/105768380 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Python基础核心经典教程(017)——列表
下一篇:Python基础核心经典教程(015)——函数入门

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月16日 01时05分02秒