返回课程目录

第 02 章 基本数据类型

学习目标

  • 区分整数、浮点数和复数,并完成数值运算。
  • 正确使用 True、False、None、比较运算和逻辑运算。
  • 掌握字符串索引、切片、格式化和常用方法。
  • 使用 type() 判断类型,并在数值与字符串之间转换。

1. 三种数字类型

age = 18
price = 12.5
point = 3 + 4j
print(type(age), type(price), type(point))

整数没有小数点,大小只受内存限制。浮点数表示带小数的数,运算结果可能出现微小误差。复数由实部和虚部组成,j 表示虚部。

value = 3 + 4j
print(value.real)
print(value.imag)
print(abs(value))

输出:

3.0
4.0
5.0

2. 数值运算

运算示例结果含义
+ - *7 - 25加减乘
/7 / 23.5普通除法
//7 // 23向下取整除法
%7 % 21余数
**2 ** 38乘方

常用函数:

print(abs(-8))
print(pow(2, 5))
print(round(3.14159, 2))
print(divmod(17, 5))

输出:

8
32
3.14
(3, 2)

round() 按四舍五入保留指定小数位。比较浮点数是否相等时,应考虑误差,不要只依赖一次精确比较。

3. 真假值与逻辑运算

True 和 False 是布尔值,None 表示没有值。逻辑运算有 and、or、not。

score = 86
attendance = True
print(score >= 60 and attendance)
print(score < 60 or attendance)
print(not attendance)

and 两侧都为真时结果为真;or 任意一侧为真时结果为真。比较运算包括 >、>=、<、<=、==、!=。

4. 字符串索引和切片

字符串从 0 开始编号,负数编号从末尾倒数。

text = "Python"
print(text[0], text[-1])
print(text[1:4])
print(text[:3])
print(text[::2])

输出:

P n
yth
Pyt
Pto

切片格式是 字符串[起点:终点:步长]。终点位置本身不包含在结果中。

5. 字符串操作

name = "  Python考试  "
print(name.strip())
print("py" in "python")
print("Python" * 2)
print(len("等级"))
print(",".join(["A", "B", "C"]))

常用方法还有 upper()、lower()、replace()、split()、count() 和 find()。find() 找不到内容时返回 -1。

格式化使用 format():

print("姓名:{0},成绩:{1:.1f}".format("王宁", 92.56))

输出:

姓名:王宁,成绩:92.6

冒号前是参数序号,冒号后是格式。{1:.1f} 表示第 2 个参数保留一位小数。

6. 类型判断和转换

print(type("123"))
print(int("123"))
print(float("3.5"))
print(str(2026))

int() 不能直接转换带字母的字符串。需要按表达式计算时使用 eval(),但只能处理可信输入。

本章练习

  • 计算 17 // 5、17 % 5 和 2 ** 8。
  • 输入一个字符串,输出它的第一个字符、最后一个字符和反转结果。
  • 把 98.276 格式化为保留两位小数的字符串。
  • 判断 3 < 5 and not False 的结果。

本章小结

  • / 得到浮点商,// 得到向下取整的商,% 得到余数。
  • 字符串编号从 0 开始,切片不包含终点。
  • format() 通过参数序号和格式符控制输出。
  • 输入值参与数值运算前,要先确认并转换类型。