1.5 字符串基本操作(Python)

本文来自异想之旅公开发布的Python教程,原文地址:https://www.yuque.com/yxzl/python

除了数字之外,字符便是计算机变成中最重要的概念了。你现在正在阅读这篇文章正是某种编程语言(大概是 JavaScript)处理字符信息的杰作。

本节将讲述字符串的四个知识点:转义字符、切片、操作和自身方法,随后补充多行字符串的书写规则。

转义字符

如何在电脑上打出换行符?你可能会说,简单,按一下 Enter 就是了。但是这样的操作输入的字符并没有显示出来,计算机显示时直接进行了换行这一动作……想要将回车等特殊字符像英文字母一样打印出来,就需要转义字符

名词解释:转义字符,字母前加 \ 来表示常见的那些不能显示的字符,如 \t \n 等,就称为转义字符,因为后面的字符都不是它本来的字符意思了。

转义字符描述样例
\\反斜杠符号print('\\\\')
输出 \\
\’单引号(仅在使用单引号包裹字符串时必须)print('\\'')
输出 '
\"双引号(仅在使用双引号包裹字符串时必须)print("\\"")
输出 "
\b退格(Backspace)print('Hel\\blo')
输出 Helo
\n换行print('a\\nb')
输出 a(换行到下一行)b
\t横向制表符(具体用途未来会有)print('Hello\\tWorld!')
输出 Hello World!
\uxxxx十六进制 Unicode 编码print('\\u6211\\u559c\\u6b22\\u4f60')
输出 我喜欢你
\other其它的非转义字符以普通格式输出print('\\a')
输出 a

转义字符仅在输出时有效。目前我们学到的输出方式只有 print 。如果你在选择开发工具时选择了 Python 内置的 IDEA,那么部分字符(例如 \b )将无法生效,请自行查询如何使用终端(cmd)运行 Python 解决此问题。

切片

唔……忽然想放到讲完列表再讲。原因嘛,列表和字符串的切片原理是一样的,而我有几张现成的讲列表切片的图,不想再找一次了哈哈哈哈。具体请见 1.7 章节中的介绍。

运算操作

此处的运算操作并非严格意义上的运算,更合适的名称或许是“使用运算符的字符串操作”。

加法

对两个字符串做加法,本质上是将他们连接起来。

a = 'Hello'
b = 'World'
print(a + b)

# 输出:HelloWorld

乘法

字符串的乘法是一个字符串 str 乘以一个整数 int,表示将字符串重复多少次。

a = 'QDZX'
print(a * 3)

# 输出:QDZXQDZXQDZX

字符串方法

这部分直接看样例代码。

a = "qdZX HCCE"

print('---第一组---')

print(a.upper())  # 将所有字母转换为大写,输出:QDZX HCCE
print(a.lower())  # 将所有字母转换为小写,输出:qdzx hcce
print(a.capitalize())  # 将第一个字母转换为大写,其他字母转换为小写,输出:Qdzx hcce
print(a.title())  # 将每个单词的第一个字母转换为大写,其他字母转换为小写,输出:Qdzx Hcce

print('---第二组---')

# 往下两行请高手掌握
print(a.swapcase())  # 将大写字母转换为小写,小写字母转换为大写,输出:QDzx hcce
print(a.isalpha())  # 判断是否全部为字母或Unicode字符(可以简单理解为不包含数字和英文模式的字符),输出:False

print('---第三组---')

b = 'QDZX'

print(b.isupper())  # 判断是否全部为大写字母,输出:True
print(b.islower())  # 判断是否全部为小写字母,输出:False
print(b.istitle())  # 判断是否全部为标题,输出:False

print('---第四组---')

c = '12345.6789'
print(c.isdigit())  # 判断是否全部为数字,输出:False
print('    '.isspace())  # 判断是否全部为空白字符,输出:True

print('---第五组---')

print(''.isupper())  # 对于所有 .is 开头的方法函数,空串全部输出False

print('---第六组---')

d = 'ABCDDDCBA'

print(len(d))  # 求字符串的长度,输出:9
print(d.count('D'))  # 求字符串中D出现的次数,输出:3
print(d.find('D'))  # 求字符串中D首次出现的位置,输出:3(出现在字符串第4个字符,但是编程语言从0开始计数)
print(d.startswith('ABC'))  # 判断字符串是否以指定的字符串开头,输出:True
print(d.endswith('DCBA'))  # 判断字符串是否以指定的字符串结尾,输出:True

以上形如a.xxx()的语句中,xxxa对象的方法。

名词解释:对象,包括属性(Properties)和方法(Methods),属性就是需要记忆的信息,方法就是对象能够提供的服务。此处我们可以先理解为特殊的变量。
方法,特殊的函数,与普通函数不同的地方是它属于一个对象,调用它完成的操作通常情况下是围绕这个对象本身的值展开的。例如a.upper()就是操作字符串a中的字符。
这里先介绍一个大概,若有不理解不必着急,关于类和对象的更多知识将在教程 第二部分 提及。

多行字符串

我们已知在 Python 中可以使用 '\n' 换行,但是这样的换行并不明了,且对于长字符串来说过于麻烦,有没有更简单的方式?

三引号字符串。

a = '''Hello
World'''
print(a)

print('=====')

b = """大

家好
"""
print(b)

输出:

Hello
World
=====
大

家好

又是一个新手常问的问题:更多呢?四个,五个引号可不可以?答案是不可以,会报错。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

异想之旅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值