程序需要和用户交流。最基础的交流方式就是输出(output)信息,以及从键盘读取输入(input)。
print()
print() 是输出函数,用于向屏幕输出文本或变量值。
有些字符在程序中有特殊意义,需要使用转义字符(escape character)输出。
\\:反斜杠\':单引号\":双引号\n:换行\t:制表符
print("\"Hello\nWorld\"")运行结果:
"Hello
World"知识测验
题目
在字符串中,转义字符 \n 表示什么?
占位符输出
除了直接输出变量,也可以使用占位符(placeholder)把变量嵌入字符串。
%d:整数%f:浮点数%s:字符串
length = 10
width = 5
area = length * width
print("面积:%d * %d = %.2f" % (length, width, area))运行结果:
面积:10 * 5 = 50.00更现代的写法是使用格式化字符串字面量(formatted string literal),也常称为 f-string。它可以直接在字符串中引用变量,也可以设置格式。
print(f"面积:{length} * {width} = {area:.2f}")知识测验
题目
如果 area = 50,下面哪个 f-string 会显示两位小数?
控制 print() 的结尾
默认情况下,print() 输出后会换行。如果不想换行,可以传入 end 参数(parameter)。
num1 = 1
num2 = 2
num3 = 4
num4 = 8
print(num1, end=', ')
print(num2, end=', ')
print(num3, end=', ')
print(num4, end='...')运行结果:
1, 2, 4, 8...input()
input() 是输入函数,可以读取用户从键盘输入的内容,并把它赋值(assignment)给变量。
input() 读取到的数据默认是 str。如果需要数字,要手动进行类型转换(type conversion)。
import math
r = float(input("半径:"))
area = math.pi * r ** 2
print("面积:%.2f" % area)表达式 r ** 2 中的 ** 是幂运算符(exponentiation operator),表示“r 的 2 次方”。
一次可能的运行过程:
半径:5
面积:78.54这里 float() 把输入的字符串转换成浮点数(floating-point number)。math.pi 来自 Python 的 math 模块(module),表示圆周率。
知识测验
题目
input() 从键盘读取到的数据默认是什么类型?
互动实验
输出实验台
访问权限免费
依次点击三张代码卡,观察每条语句如何改变终端输出。
动手练习
计算两点之间的距离
读取两个坐标点,输出平面距离。
- 分别读取 x1、y1、x2、y2 四个浮点数。
- 按照距离公式计算两点距离。
- 把结果保留两位小数后输出。
动手练习
制作一个温度记录卡
读取一个摄氏温度,把它保存到语义清晰的变量里,计算华氏温度后再输出一份简洁报告。
- 用 float(input(...)) 读取一个摄氏温度。
- 把华氏温度保存到变量 fahrenheit 中。
- 再创建一个字符串变量 report_title,并把标题与换算结果一起输出。