以下是 Python 语法详尽版,覆盖 Python 3 核心语法规则和常用特性,适合快速查阅和系统学习:
1. 基础语法
# 注释:单行注释以 # 开头
'''
多行注释用三引号(单引号或双引号)
'''
# 变量赋值(无需声明类型)
a = 10
name = "Python"
# 多变量赋值
x, y, z, u = 1, 2, 3, 4
a = b = c = 0
# 输出
print("Hello, World!") # 自动换行
print(a, end=" ") # 不换行
2. 数据类型
基本类型
# 整数
num_int = 10
# 浮点数
num_float = 3.14
# 布尔值
is_true = True
is_false = False
# 字符串
s1 = '单引号'
s2 = "双引号"
s3 = """多行
字符串"""
复合类型
# 列表(可变)
list1 = [1, 2, 3, "a", True]
list1[0] = 100 # 修改元素
# 元组(不可变)
tuple1 = (1, 2, "a")
# tuple1[0] = 100 # 报错
# 字典(键值对)
dict1 = {"name": "Alice", "age": 25}
dict1["age"] = 26 # 修改值
# 集合(无序、不重复)
set1 = {1, 2, 3}
set1.add(4)
类型转换
int("123") # 字符串 → 整数
float("3.14") # 字符串 → 浮点数
str(100) # 数值 → 字符串
list("abc") # 字符串 → 列表 ['a', 'b', 'c']
tuple([1,2,3])# 列表 → 元组 (1,2,3)
3. 运算符
# 算术运算符
a = 10 + 3 # 加
b = 10 // 3 # 整除 → 3
c = 10 ** 2 # 幂 → 100
# 比较运算符
result = (5 == 5) # True
result = (5 != 3) # True
# 逻辑运算符
result = (True and False) # False
result = (True or False) # True
result = not True # False
# 成员运算符
result = "a" in ["a", "b"] # True
result = "x" not in "abc" # True
# 身份运算符
a = [1,2]; b = [1,2]
result = (a is b) # False(对象内存地址不同)
4. 流程控制
条件语句
if a > 10:
print("a > 10")
elif a == 10:
print("a = 10")
else:
print("a < 10")
# 三元表达式
max_val = a if a > b else b
循环语句
# for 循环
for i in range(5): # 0,1,2,3,4
print(i)
for char in "Python":
print(char)
# while 循环
count = 0
while count < 5:
print(count)
count += 1
# 循环控制
for i in range(10):
if i == 3:
continue # 跳过当前迭代
if i == 7:
break # 终止循环
5. 函数
# 定义函数
def add(a, b):
return a + b
# 默认参数
def greet(name="World"):
print(f"Hello, {name}!")
# 可变参数(*args 元组,**kwargs 字典)
def print_args(*args, **kwargs):
print(args) # (1,2,3)
print(kwargs) # {"x":10}
print_args(1, 2, 3, x=10)
# 匿名函数(lambda)
square = lambda x: x ** 2
6. 异常处理
try:
result = 10 / 0
except ZeroDivisionError as e:
print("Error:", e)
else:
print("无异常时执行")
finally:
print("无论是否异常都执行")
# 抛出异常
if a < 0:
raise ValueError("a 不能为负数")
7. 文件操作
# 写入文件
with open("file.txt", "w", encoding="utf-8") as f:
f.write("Hello\nWorld")
# 读取文件
with open("file.txt", "r", encoding="utf-8") as f:
content = f.read()
lines = f.readlines() # 按行读取为列表
8. 面向对象编程(OOP)
# 定义类
class Dog:
# 类属性
species = "Canine"
# 构造方法
def __init__(self, name, age):
self.name = name # 实例属性
self.age = age
# 实例方法
def bark(self):
print(f"{self.name} 汪汪!")
# 继承
class Bulldog(Dog):
def run(self):
print("奔跑!")
# 创建对象
dog = Dog("Tom", 3)
dog.bark()
9. 模块与包
# 导入模块
import math
print(math.sqrt(16)) # 4.0
# 从模块导入特定函数
from random import randint
print(randint(1, 10))
# 自定义模块
# 假设有 my_module.py,内容:
# def hello(): print("Hello")
import my_module
my_module.hello()
10. 高级特性
列表推导式
squares = [x**2 for x in range(10)] # [0,1,4,9,...,81]
even_squares = [x**2 for x in range(10) if x % 2 == 0]
生成器
gen = (x**2 for x in range(10)) # 生成器表达式
for num in gen:
print(num)
装饰器
def my_decorator(func):
def wrapper():
print("装饰器前置操作")
func()
print("装饰器后置操作")
return wrapper
@my_decorator
def say_hello():
print("Hello")
say_hello() # 输出装饰后的内容
11. 其他关键语法
上下文管理器(with)
with open("file.txt", "r") as f:
data = f.read()
# 自动关闭文件
枚举(enumerate)
fruits = ["apple", "banana", "cherry"]
for index, value in enumerate(fruits):
print(index, value) # 0 apple, 1 banana...
zip 合并迭代器
names = ["Alice", "Bob"]
ages = [25, 30]
for name, age in zip(names, ages):
print(name, age) # Alice 25, Bob 30
12. 常用内置函数
len([1,2,3]) # 3
sum([1,2,3]) # 6
max([1,5,3]) # 5
sorted([3,1,2]) # [1,2,3]
isinstance(10, int) # True
type("hello") # <class 'str'>
附:Python 之禅
import this # 输入后查看 Python 设计哲学
以上为 Python 核心语法速查手册,可根据需求深入学习特定模块(如 collections, itertools, asyncio 等)。