上节课我们已经学习了比较运算和逻辑运算,本次课我们将引入一个新的问题。我们知道,在Python中字符串需要写在引号中,那如果字符串的内容有引号怎么办?这就引入了我们今天要讲的主要内容。
一、转义字符
转义字符是一种以“”开头的字符。例如退格符用''表明,换行符用'
'表明。转义字符中的''表明它后面的字符已失去它原来的含义,转变成另外的特定含义。反斜杠与其后面的字符一起构成一个特定的字符。需要使用转义字符的分为两种情况:一种是控制字符,键盘上无法输入的键;一种是被Python语法特定含义定义,无法直接输入。我们来看看转义字符有哪些。
|
转义字符 |
含义 |
|
反斜杠 |
|
|
' |
单引号 ' |
|
“ |
双引号 “ |
|
换行符 |
|
|
制表符 |
|
|
回车符 |
|
|
退格符 |
我们可以看出,转义字符使用''开头表明,如果字符串中需要输入'',我们就需要双写,前面代表转义字符,后面代表''这个字符。而单引号和双引号都用于表明字符串的开始和结束,在字符串中需要使用单引号和双引号时,前面要加转义字符的标识。
控制字符中回车符和退格符不需要掌握。下面我们着重看一下换行符和制表符这两个控制字符的作用:
1.1 换行符
换行符(
)顾名思义,就是在字符串内容中需要换行。换行符也是我们书写程序中使用最多的一种控制符。我们举一个例子演示一下:
s = "春晓
唐 孟浩然
春眠不觉晓,处处闻啼鸟。
夜来风雨声,花落知多少。"
print(s)
这段代码输出结果如下:
春晓
唐 孟浩然
春眠不觉晓,处处闻啼鸟。
夜来风雨声,花落知多少。
我们可以看出,'
'的位置在输出时换行了。
1.2 制表符
制表符( ),是指在字符串中加入一个键盘上的“TAB”键。一般用于输出多个内容时保持上下内容的对齐。我们看一下具体的例子:
print("bring brought brought")
print("speak spoke spoken")
print("write wrote written")
这段代码输出结果如下:

我们可以看出,单词与单词之间使用' '隔开,单词与单词之间如同表格一下整齐排列。
二、输出函数进阶
2.1 输出多个内容
之前我们已经讲过,使用print()函数可以输出内容。输出语句可以同时输出多个内容,中间以逗号隔开,每个变量类型可以不同。不同的内容之间以空格隔开。
我们以第6讲中的计算正方形的面积为例,优化一下程序:
a = input("请输入边长:")
a = float(a)
s = a * a
print("正方形的面积:", s)
我们可以看到,在输出面积的结果前,我们加上了一个字符串。程序运行后,输入1.5,输出的结果为:
正方形的面积: 2.25
除了添加输出内容的详细说明外,我们还可以使用逗号分隔实现更多输出。下面的程序的功能是:输入两个数,计算这两个数相加、相减、相乘、相除的结果:
a = input("第一个数:")
b = input("第二个数:")
a = float(a)
b = float(b)
print(a, "+", b, "=", a + b)
print(a, "-", b, "=", a - b)
print(a, "*", b, "=", a * b)
print(a, "/", b, "=", a / b)
我们可以看到,使用多个逗号隔开,输出结果可以拼凑出运算式。
2.2 print()函数的“小尾巴”
细心的同学会发现,print()函数输出完内容后,会自动给我们加一个换行符。刚刚讲的多个内容输出时,会自动帮我们在不同的内容之间加空格。如果我们不想要它这样输出怎么办呢?
print函数里面可以加两种“小尾巴”,改变它的结尾符和分隔符,它们分别叫end='char'和sep='char'。使用起来超级简单。
我们先来举例子说明一下结尾符:
print("Hello", end=' ')
print("你好")
打印出来的结果变成了:
Hello 你好
这是由于我们在第一行的print()函数的最后加了end=' ',指定了结尾符为空格。
再举个例子说明一下分隔符:
print(1, 2, 3, 4, 5, sep=';')
打印出来的结果变成了:
1;2;3;4;5
这是由于我们在print()函数最后加上了sep=';',指定了分隔符为分号。
三、其他内置函数
3.1 pow()函数
pow()函数的作用与**运算符一样,用于计算幂运算,里面需要写两个参数,分别为底和幂。
我们看看这个函数的具体使用并对比一下**运算符:
a = 3 ** 4
b = pow(3, 4)
print(a, b)
执行上面代码,我们可以看出,a和b的值完全一样。
3.2 round()函数
round()函数的作用是对一个浮点数进行四舍五入,里面有两个参数,第一个参数是浮点数,第二个参数是准确的小数位数,不写默认准确到整数位。
我们看看它的具体使用方法:
print(round(3.1)) # 3
print(round(3.7)) # 4
print(round(7.1635, 2)) # 7.16
print(round(120.6192, 2)) # 120.62
3.3 eval()函数
eval()函数的作用是将字符串的内容作为Python的代码执行。我们看看下面几个例子:
print(eval("2+3"))
字符串的内容时2+3,使用eval()函数后,字符串的内容会被当成代码执行,输出的结果为5。
a = 2
print(eval("a+3"))
这个代码段中,a被赋值为2,字符串的内容是a+3,变成代码后就是2+3,输出结果为5。
print(eval("Hello"))
这段代码执行后会报错:
NameError: name 'Hello' is not defined
字符串中的Hello被转换成了代码执行,变成了一个标识符,但是这个变量没有被定义,因此程序报错。
eval()函数有如下妙用,还是以计算正方形面积的代码为例。前面的代码中,我们不知道正方形的边长是整数还是浮点数,所以转换成浮点数了。如果运行代码时边长输入的整数,最后输出的结果还是浮点数。如果用eval()函数就可以优化这个代码。
a = eval(input("请输入边长:"))
s = a * a
print("正方形的面积:", s)
四、课后思考题
1、下面代码的执行结果是?( )
a=21.5
print (eval('a+10'))
2、写出下面式子的计算结果
round(7.268, 1)
round(64.7792, 2)
3、编程题:
使用一个print()语句打印出以下诗句:
绝句
唐 杜甫
两个黄鹂鸣翠柳,一行白鹭上青天。
窗含西岭千秋雪,门泊东吴万里船。
4、编程题:
输入长方形的长和宽,计算长方形的周长和面积,要求周长和面积以逗号隔开。
五、上节课思考题答案
1. A
2. B
3. A
4. D
5. B
6. 参考代码:
num = int(input("请输入本子数量:"))
amount = 3.3 * num
print(100 >= amount)
















- 最新
- 最热
只看作者