1. 现代交互体验:Python REPL 的进化
当你直接在终端输入 python 并回车时,你进入的是 REPL (Read-Eval-Print Loop) 环境。这是你与 Python 对话的最前线。
1.1 Python 3.13+ 新版 REPL 特性
如果你安装的是 Python 3.13 或更新版本,你会发现交互式界面有了质的飞跃。不再是一个枯燥的光标,而是一个智能的终端。
多行编辑支持:在过去,如果你在 REPL 里写错了多行代码,修改起来非常痛苦。现在,你可以像在编辑器里一样,使用 上下方向键 回溯历史多行代码,直接修改错误。
彩色高亮显示:关键字、字符串、数字现在拥有不同的颜色,语法错误会直接标红,极大提升了可读性。
自动补全:输入对象名后按
Tab键,可以看到可用的属性和方法。
💡 建议:请确保你的终端支持 UTF-8 和彩色显示。如果你还在用 Windows 自带的旧版 cmd,建议切换到 PowerShell 或 Windows Terminal,以获得最佳体验。
1.2 探索对象的神器:help() 与 dir()
在现代开发中,记忆所有函数参数是不现实的。学会“自查”比死记硬背更重要。
dir(object):列出对象的所有属性和方法。>>> name = "Python" >>> dir(name) ['__add__', '__class__', ..., 'capitalize', 'lower', 'upper'] # 看到字符串能做什么help(object):查看对象的详细文档说明。>>> help(str.upper) Help on method_descriptor: upper(...) S.upper() -> str Return a copy of S converted to uppercase.按
q键退出帮助文档。
2. 变量与核心数据类型
Python 是动态类型语言,这意味着你不需要声明变量类型,解释器会自动推断。但作为现代开发者,我们需要清楚每个变量背后代表的数据结构。
2.1 整数 (int) 与 浮点数 (float)
处理数值计算的基础。
# 整数 (int)
age = 25
count = 100
# 浮点数 (float)
price = 19.99
pi = 3.14159
# 基本运算
a = 10
b = 3
print(a + b) # 加:13
print(a - b) # 减:7
print(a * b) # 乘:30
print(a / b) # 除:3.333... (结果永远是 float)
print(a // b) # 整除:3 (结果向下取整)
print(a % b) # 取余:1
print(a ** b) # 幂运算:1000 (10 的 3 次方)
⚠️ 注意:浮点数存在精度问题。
0.1 + 0.2在计算机中可能不等于0.3。涉及金钱计算时,建议使用decimal模块(后续章节会讲)。
2.2 字符串 (str)
文本处理的核心。现代 Python 中,字符串默认是 Unicode 编码,完美支持中文。
name = "Alice"
job = 'Developer' # 单双引号效果相同
description = """
多行字符串
可以跨行显示
"""
# 字符串运算
first = "Hello"
second = "World"
print(first + " " + second) # 拼接:Hello World
print(first * 3) # 重复:HelloHelloHello
2.3 布尔值 (bool)
逻辑判断的基石,只有两个值:True 和 False。
is_active = True
is_deleted = False
# 逻辑运算
print(True and False) # 与:False
print(True or False) # 或:True
print(not True) # 非:False
# 真值测试 (Truthiness)
# 以下值在布尔上下文中被视为 False
bool(0) # False
bool("") # False (空字符串)
bool([]) # False (空列表)
bool(None) # False
2.4 变量命名规范 (PEP 8)
变量名是代码的文档。遵循 PEP 8 规范能让你的代码更易读。
使用小写字母和下划线 (snake_case):
user_name,total_count。见名知意:避免
a,b,x这种无意义命名,除非是循环计数器。区分大小写:
Variable和variable是不同的。不要使用内置名称:不要定义
list = [1, 2]或str = "hello",这会覆盖 Python 内置类型。
# ✅ 推荐
user_age = 25
total_price = 100.5
# ❌ 不推荐
UserAge = 25 # 类名才用大写字母开头
a = 25 # 无法看出含义
list = [1, 2] # 覆盖了内置 list 类型
3. 输入与输出:现代 I/O 实践
3.1 输出:只用 f-string
Python 历史上出现过 % 占位符、.format() 等方法。在现代 Python (3.6+) 中,请只使用 f-string (Formatted String Literals)。它最简洁、性能最好、功能最强。
name = "Alice"
age = 25
height = 1.75
# 基础用法
print(f"Hello, {name}") # Hello, Alice
# 表达式计算
print(f"Next year, I will be {age + 1}") # Next year, I will be 26
# 格式化数字 (保留 2 位小数)
print(f"Height: {height:.2f} meters") # Height: 1.75 meters
# ✨ 调试神器 (Python 3.8+)
# 直接打印变量名和值,无需手动写 key
print(f"{name=}") # name='Alice'
print(f"{age=}") # age=25
3.2 输入:input()
获取用户控制台输入。注意:input() 获取到的所有内容默认都是 字符串 (str) 类型。
user_input = input("请输入你的年龄:")
# 用户输入 25,user_input 实际上是 "25" (字符串)
# 必须进行类型转换才能进行数学运算
age = int(user_input)
print(f"明年你 {age + 1} 岁")
⚠️ 异常风险:如果用户输入了 "twenty" 而不是 "20",
int()会报错。后续章节我们会学习如何用try-except处理这种情况。
4. 注释与代码规范
代码是写给人看的,顺便给机器运行。良好的注释和规范是团队协作的基础。
4.1 注释的使用
单行注释:使用
#,后面加一个空格。多行注释/文档字符串:使用三个引号
"""或'''。通常放在函数或模块开头作为文档说明。
# 这是一个单行注释
price = 100 # 行尾注释:说明这是价格
"""
这是一个多行文档字符串。
通常用于模块或函数的开头,
解释其用途。
"""
4.2 空白规范 (PEP 8 核心)
运算符两侧加空格:
x = 1 + 2而不是x=1+2。逗号后加空格:
[1, 2, 3]而不是[1,2,3]。空行:函数之间通常空两行,逻辑块之间空一行。
5. 本章实战练习
为了巩固本章内容,请完成以下小任务(建议在脚本文件 .py 中完成,而不是 REPL):
个人信息卡片:
定义变量存储你的姓名、出生年份、身高。
使用
input()获取用户输入。计算你的年龄(当前年份 - 出生年份)。
使用 f-string 打印一张格式整齐的个人信息卡片,身高保留两位小数。
探索练习:
在 REPL 中输入
import math。使用
dir(math)查看数学模块有哪些功能。使用
help(math.sqrt)查看开平方函数的用法。尝试计算 16 的平方根并打印。
规范检查:
检查你的代码变量名是否符合
snake_case。检查运算符两侧是否有空格。