本次主要介绍字符串,包括修改字符串的大小写、在字符串中使用变量、使用制表符或换行符来添加空白以及删除空白等操作
2.3 字符串
2.3.1 使用方法修改字符串的大小写
本小节将涉及到三个修改字符串大小写的函数:title()、
试着在Pycharm或Visual Studio Code上打出以下代码并运行:
name = "ada lovelace"
print(name.title())
你将看到以下输出:
# Ada Lovelace
此处name.title()的意思是让变量name的内容中所有的单词的首字母大写,其中name后面的句点“."的意思是让Python对变量执行相应的操作,而title后的括号则是用于填写额外的信息来完成其工作。但是函数title()不需要额外的信息,因此它后面的圆括号是空的。
接着尝试打出以下代码:
name = "Ada Lovelace"
print(name.upper())
print(name.lower())
你将看到以下输出:
# ADA LOVELACE
# ada lovelace
由输出结果可以发现,upper()函数和lower()函数的作用分别是让变量name中的单词内容全部大写和全部小写。
2.3.2 在字符串中使用变量
要在字符串中插入变量的值,可在前引号前加上字母f,再将要插入的变量放在花括号内。这样,当Python显示字符串时,将把每个变量都替换为其值。
试着打出并运行以下代码:
first_name = "ada"
last_name = "lovelace"
full_name = f"{first_name} {last_name}"
print(full_name)
你将看到以下输出:
# ada lovelace
这里的变量full_name中加入了字母f,并且两个要加入的变量first_name和last_name插入到了变量full_name当中,使其成为了一个完整的名字ada lovelace。
尝试在变量中添加自己的语句:
first_name = "ada"
last_name = "lovelace"
full_name = f"{first_name} {last_name}"
# print(full_name)
print(f"Hello, {full_name.title()}!")
尝试用一个变量message来表示要输出的语句:
first_name = "ada"
last_name = "lovelace"
full_name = f"{first_name} {last_name}"
# print(full_name)
# print(f"Hello, {full_name.title()}!")
message = f"Hello, {full_name.title()}!"
print(message)
你将看到一下输出:
# Hello, Ada Lovelace!
注意:f字符串是Python3.6引入的,如果使用的是Python3.5或更早的版本,需要使用format()方法,而非f语法
2.3.3 使用制表符或换行符来添加空白
本小节将介绍两种打印字符:制表符/t 和 换行符/n,利用打印字符来组织输出,可以让客户阅读起来更加容易。
试着打出并运行以下代码:
print("Language: \n \t Python \n \t C \n \t JavaScript")
你将看到一下输出:
# Language:
# Python
# C
# JavaScript
2.3.4 删除空白
本小节将介绍三个函数:rstrip()、lstrip()和strip(),它们的作用分别是:删除字符串末尾的空白、删除字符串开头的空白、删除字符串开头和末尾的空白。
首先定义一个变量:
favorite_language = ' Python '
print(favorite_language.rstrip())# 删除字符串末尾的空白,输出结果为' Python'
print(favorite_language.lstrip())# 删除字符串开头的空白,输出结果为'Python '
print(favorite_language.strip())# 删除字符串开头和末尾的空白,输出结果为'Python'
你将看到以下输出结果:
Python
Python
Python
2.3.5 使用字符串时避免语法错误
试着分别运行上下两行代码,并观察其运行结果:
message = "One of python's strengths is its diverse community."
print(message)
message = 'One of python's strengths is its diverse community.'
print(message)
你会发现,当运行下面两行代码时解释器会报错,这是什么原因呢?
报错分析:实际上Python的单引号和双引号的作用相同,但是由于原句中python's包含有一个单引号,所以运行时会报错,所以,在我们写代码过程中一定要注意细节,不要被这种小错误托住后腿。
2.3.5.1 Python单引号、双引号、三引号的作用
单引号、双引号:定义字符串
三(单双)引号:①多行注释;②定义多行字符串
试着运行以下代码:
"""
这是一个
多行注释
"""
'''
这也是一个
多行注释
'''
# 三单引号(''')
print('''hello
world
python''')
# 三双引号(""")
print("""hello
world
python""")
你将看到以下输出结果:
# hello
# world
# python
# hello
# world
# python
练习2-3:个性化消息
要求:打印出一条自定义消息。
print("Hello Eric, would you like to learn some Python today?")
练习2-4:调整名字的大小写
要求:定义一个名字变量并赋予其内容,试着分别打印出原始名字、所有字母均大写、所有字母均小写、所有单词首字母大写四种情况。
my_name = 'Hongbin Kuang'
print(my_name)
print(my_name.upper())
print(my_name.lower())
print(my_name.title())
练习2-5:名言
要求:打印出一句你最喜欢的名言
print('Albert Einstein once said,"A person who never made a mistake never tried anything new."')
练习2-6:名言2
要求:定义两个变量,分别是人名和名言,在上一个练习的基础上插入两个变量(利用字母f)。
person_name = "Albert Einstein"
famous_saying = "A person who never made a mistake never tried anything new."
print(f'{person_name} once said, "{famous_saying}"')
练习2-7:剔除人名中的空白
要求:定义一个名字并赋予其内容,第一行打印出包含使用制表符和换行符的名字,第二、三、四行分别打印出剔除人名开头、末尾以及开头和末尾的空白都剔除的人名。
my_name = " Hongbin Kuang "
print("\t Hongbin \n Kuang")
print(my_name.lstrip())
print(my_name.rstrip())
print(my_name.strip())