字符串定义与使用实例Python中转义字符串中的特殊字符定义解释与案例

字符串

大多数程序会定义并收集某种数据,然后使用它们来做些有意义的事情。因此,对数据分类大有裨益。我们将介绍的第一种数据类型是字符串。字符串虽然看似简单,但能够以很多不同的方式使用。

字符串(string)就是一系列字符。在 Python 中,用引号引起的都是字符串,其中的引号可以是单引号,也可以是双引号:

"This is a string."
'This is also a string.'

这种灵活性让你能够在字符串中包含引号和撇号:

'I told my friend, "Python is my favorite language!"'
"The language 'Python' is named after Monty Python, not thesnake."
"One of Python's strengths is its diverse and supportivecommunity."

下面来看一些使用字符串的方式。

使用方法修改字符串的大小写

name = "ada lovelace"
print(name.title())

将这个文件保存为 name.py,再运行它。你将看到如下输出:

Ada Lovelace
'''在这个示例中,变量 name 指向全小写的字符串 "ada
lovelace"。在函数调用 print() 中,title() 方法出现在这个变量的后面。方法(method)是 Python 可对数据执行的操作。在
name.title() 中,name 后面的句点(.)让 Python 对 name变量执行 title() 方法指定的操作。每个方法后面都跟着一对括号,这是因为方法通常需要额外的信息来完成工作。这种信息是在括
号内提供的。title() 函数不需要额外的信息,因此它后面的括号是空的。
​
title() 方法以首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写。这很有用,因为你经常需要将名字视为信息。例
如,你可能希望程序将值 Ada、ADA 和 ada 视为同一个名字,并将它们都显示为 Ada。
'''

还有其他几个很有用的大小写处理方法。例如,要将字符串改为全大

写或全小写的,可以像下面这样做:

name = "Ada Lovelace"
print(name.upper())
print(name.lower())

这些代码的输出如下:

ADA LOVELACE
ada lovelace

在存储数据时,lower() 方法很有用。用户通常不能像你期望的那样提供正确的大小写,因此需要将字符串先转换为全小写的再存储。

以后需要显示这些信息时,再将其转换为最合适的大小写方式即可

在字符串中使用变量

在一些情况下,你可能想在字符串中使用变量的值。例如,你可能想

使用两个变量分别表示名和姓,再合并这两个值以显示姓名:

full_name.py

first_name = "ada"
last_name = "lovelace"
full_name = f"{first_name} {last_name}"
print(full_name)
​

要在字符串中插入变量的值,可先在左引号前加上字母 f(见❶),再将要插入的变量放在花括号内。这样,Python 在显示字符串时,将把每个变量都替换为其值。

这种字符串称为 f 字符串。f 是 format(设置格式)的简写,因为Python 通过把花括号内的变量替换为其值来设置字符串的格式。上述代码的输出如下:

ada lovelace

使用 f 字符串可以完成很多任务,如利用与变量关联的信息来创建完整的消息,如下所示:

first_name = "ada"
last_name = "lovelace"
full_name = f"{first_name} {last_name}"
print(f"Hello, {full_name.title()}!")

这里,在一个问候用户的句子中使用了完整的姓名,并使用title() 方法来将姓名设置为合适的格式。这些代码将显示一条格式良好的简单问候语:

Hello, Ada Lovelace!

还可以使用 f 字符串来创建消息,再把整条消息赋给变量:

first_name = "ada"
last_name = "lovelace"
full_name = f"{first_name} {last_name}"
message = f"Hello, {full_name.title()}!"
print(message)

上述代码也显示消息“Hello, Ada Lovelace!”,但将这条消息赋给了一个变量,这让最后的函数调用 print() 简单得多

使用制表符或换行符来添加空白

在编程中,空白泛指任何非打印字符,如空格、制表符和换行符。你可以使用空白来组织输出,让用户阅读起来更容易。

要在字符串中添加制表符,可使用字符组合 \t:

>>> print("Python")
Python
>>> print("\tPython")
 Python 

要在字符串中添加换行符,可使用字符组合 \n:

print("Languages:\nPython\nC\nJavaScript")
#Languages:
#Python
#C
#JavaScript

还可以在同一个字符串中同时包含制表符和换行符。字符串 "\n\t"让 Python 换到下一行,并在下一行开头添加一个制表符。下面的示例演示了如何使用单行字符串来生成 4 行输出:

 print("Languages:\n\tPython\n\tC\n\tJavaScript")
 Languages:
 Python 
 C 
 JavaScript 

删除空白

在程序中,额外的空白可能令人迷惑。对程序员来说,'python' 和'python ' 看起来几乎没什么两样,但对程序来说,它们是两个不同的字符串。Python 能够发现 'python ' 中额外的空白,并认为它意义重大——除非你告诉它不是这样的。

空白很重要,因为你经常需要比较两个字符串是否相同。例如,一个重要的示例是,在用户登录网站时检查其用户名。即使在非常简单的情形下,额外的空白也可能令人迷惑。所幸,在 Python 中删除用户输入数据中多余的空白易如反掌。

Python 能够找出字符串左端和右端多余的空白。要确保字符串右端没有空白,可使用 rstrip() 方法。

# 这里我们创建了一个变量 favorite_language,并给它赋值为 'python '。然后我们打印出来,可以看到输出是 'python ',末尾有一个空格。
favorite_language = 'python '
print(favorite_language)  # 输出: 'python ',打印当前的 favorite_language 值

#这里我们使用 rstrip() 方法去掉 favorite_language 末尾的空格。然后我们再次打印出来,这次输出变成了 'python',没有空格了。
favorite_language = favorite_language.rstrip()
print(favorite_language)  # 输出: 'python',打印去除空白字符后的 favorite_language 值

# 最后我们再打印一次,确保 favorite_language 现在确实是 'python',没有空格。
print(favorite_language)  # 输出: 'python',再次打印 favorite_language 的值

#包含了三次 print 语句。
#第一次 print 显示初始的 favorite_language 值,包括末尾的空格。
#第二次 print 显示调用 rstrip() 后的结果,去掉了末尾的空格。
#第三次 print 再次显示 favorite_language 的值,确认它已经被更新。

与变量 favorite_language 关联的字符串右端有多余的空白。当你在终端会话中向 Python 询问这个变量的值时,可看到末尾的空格(见❷)。对变量 favorite_language 调用 rstrip()方法后,这个多余的空格被删除了。然而,这种删除只是暂时的,如果再次询问 favorite_ language 的值,这个字符串会与输入时一样,依然包含多余的空白。

要永久删除这个字符串中的空白,必须将删除操作的结果关联到变量:

#这里我们创建了一个变量 favorite_language,并给它赋值为 'python '
favorite_language = 'python ' 

# 这里我们使用 rstrip() 方法去掉 favorite_language 末尾的空格
favorite_language = favorite_language.rstrip()	

# 打印去除空白字符后的 favorite_language 值,最后我们打印出来,输出变成了 'python',没有空格了。
print(favorite_language)  # 输出: 'python'

#只包含两次 print 语句。
#第一次 print 在初始化后立即调用 rstrip() 并打印结果。
#这段代码更简洁,专注于展示如何永久性地去除字符串末尾的空白字符。

为删除这个字符串中的空白,你将其右端的空白删除,再将结果关联

到原来的变量。在编程中,经常需要修改变量的值,再将新值关联到原来的变量。这就是变量的值可能随程序的运行或用户的输入数据发生变化的原因所在。

还可以删除字符串左端的空白或同时删除字符串两端的空白,分别使用 lstrip() 方法和 strip() 方法即可:

# 初始化字符串变量,注意两端都有空格
favorite_language = ' python '  # 定义一个包含前后空格的字符串

# 使用 rstrip() 去除右侧的空白字符
right_stripped = favorite_language.rstrip()  # 调用 rstrip() 方法去除右侧空格,并将结果赋值给 right_stripped
print(right_stripped)  # 输出: ' python',打印去除右侧空格后的字符串

# 使用 lstrip() 去除左侧的空白字符
left_stripped = favorite_language.lstrip()  # 调用 lstrip() 方法去除左侧空格,并将结果赋值给 left_stripped
print(left_stripped)  # 输出: 'python ',打印去除左侧空格后的字符串

# 使用 strip() 去除两侧的空白字符
stripped = favorite_language.strip()  # 调用 strip() 方法去除两侧空格,并将结果赋值给 stripped
print(stripped)  # 输出: 'python',打印去除两侧空格后的字符串


在这个示例中,我们首先创建了一个开头和末尾都有空白的字符串(见❶)。接下来,分别删除右端(见❷)、左端(见❸)和两端(见❹)的空白。尝试使用这些剥除(strip)函数,有助于你熟悉字符串操

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

a275857760

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

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

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

打赏作者

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

抵扣说明:

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

余额充值