Python 基础语法汇总
Python 语法
│
├── 基本结构
│ ├── 语句(Statements)
│ │ ├── 表达式语句(如赋值、算术运算)
│ │ ├── 控制流语句(if, for, while)
│ │ ├── 定义语句(def, class)
│ │ └── 导入语句(import, from ... import)
│ ├── 代码块(由缩进定义)
│ └── 注释(单行 #, 多行 ''' 或 """)
│
├── 数据类型
│ ├── 基本类型
│ │ ├── 数字(int, float, complex)
│ │ ├── 字符串(str)
│ │ ├── 布尔值(bool)
│ │ └── 空值(NoneType)
│ ├── 复合类型
│ │ ├── 列表(list)
│ │ ├── 元组(tuple)
│ │ ├── 字典(dict)
│ │ └── 集合(set)
│ └── 类型转换(如 int(), str(), list())
│
├── 运算符
│ ├── 算术运算符(+, -, *, /, //, %, **)
│ ├── 比较运算符(==, !=, , =)
│ ├── 逻辑运算符(and, or, not)
│ ├── 位运算符(&, |, ^, ~, )
│ └── 赋值运算符(=, +=, -=, 等)
│
├── 控制流
│ ├── 条件语句(if-elif-else)
│ ├── 循环语句(for, while)
│ ├── 跳转语句(break, continue, pass)
│ └── 异常处理(try-except-finally-else)
│
├── 函数
│ ├── 定义(def)
│ ├── 参数(位置参数、默认参数、可变参数)
│ ├── 返回值(return)
│ ├── 作用域(局部变量、全局变量)
│ └── 匿名函数(lambda)
│
├── 类与对象
│ ├── 类定义(class)
│ ├── 继承(单继承、多继承)
│ ├── 方法(实例方法、类方法、静态方法)
│ ├── 特殊方法(如 __init__, __str__)
│ └── 属性(@property)
│
├── 模块与包
│ ├── 模块(.py 文件)
│ ├── 导入(import 模块名, from 模块名 import 成员)
│ ├── 包(包含 __init__.py 的目录)
│ └── 标准库与第三方库
│
└── 其他特性
├── 迭代器与生成器(iter, next, yield)
├── 装饰器(@decorator)
├── 上下文管理器(with 语句)
└── 元编程(如 type, exec, eval)
一、基础语法规则
1. 缩进与代码块
- Python使用缩进(4个空格)代替大括号 {} 表示代码块。
- 错误示例:
if True: print("错误!") # 缩进不一致会报错- 正确写法:
if True: print("缩进正确!") # 必须缩进4个空格2. 注释
- 单行注释:以 # 开头。
- 多行注释:用三引号 """ 或 ''' 包裹。
# 这是单行注释 """ 这是多行注释 可以写多行内容 """
3. 语句分隔
- 一行写多条语句时用分号 ; 分隔(不推荐,多条语句最好是分行写):
a = 5; b = 10; print(a + b)
4. 变量命名
- 规则:字母/数字/下划线组成,不能以数字开头。
- 区分大小写:name 和 Name 是不同变量。
- 命名惯例:
- 小写+下划线(如 user_name)。
- 类名用大驼峰(如 ClassName)。
二、数据类型与操作
1. 基本数据类型
类型 示例 说明 int 5, -3 整数 float 3.14, -2.5 浮点数 str "Hello", 'Python' 字符串 bool True, False 布尔值 NoneType None 空值 2. 复合数据类型
- 列表(List):有序、可变
nums = [1, 2, 3] nums[0] = 10 # 修改元素
- 元组(Tuple):有序、不可变
point = (10, 20) # point[0] = 5 # 报错!
- 字典(Dict):键值对集合
user = {"name": "Alice", "age": 25} print(user["name"]) # Alice- 集合(Set):无序、唯一
unique_nums = {1, 2, 2, 3} # 自动去重 → {1, 2, 3}3. 类型转换
a = int("10") # 字符串转整数 → 10 b = float(5) # 整数转浮点数 → 5.0 c = str(3.14) # 浮点数转字符串 → "3.14" d = list("abc") # 字符串转列表 → ['a', 'b', 'c']三、运算符
1. 算术运算符
print(5 + 3) # 加法 → 8 print(5 ** 2) # 幂运算 → 25 print(10 % 3) # 取模 → 1
2. 比较运算符
print(3 > 2) # True print(5 == 5.0) # True(值相等) print(5 is 5.0) # False(对象不同)
3. 逻辑运算符
print(True and False) # False print(not True) # False
4. 成员运算符
nums = [1, 2, 3] print(2 in nums) # True print(4 not in nums) # True
四、流程控制
1. 条件语句
age = 18 if age
2. 循环语句
- for** 循环**:
for i in range(3): # 输出0,1,2 print(i) # 遍历列表 fruits = ["apple", "banana"] for fruit in fruits: print(fruit)- while** 循环**:
count = 0 while count
3. 循环控制
# break 终止循环 for i in range(5): if i == 3: break # 循环终止于i=3 print(i) # continue 跳过当前迭代 for i in range(5): if i == 2: continue # 跳过i=2 print(i)五、函数
1. 定义与调用
def greet(name): """返回问候语(文档字符串)""" return f"Hello, {name}!" print(greet("Alice")) # Hello, Alice!2. 参数传递
- 默认参数:
def power(base, exp=2): return base ** exp print(power(3)) # 9 (exp默认为2) print(power(3, 3)) # 27- 可变参数:
def sum_all(*args): return sum(args) print(sum_all(1, 2, 3)) # 63. Lambda函数
square = lambda x: x ** 2 print(square(5)) # 25
六、面向对象编程(OOP)
1. 类与对象
class Dog: # 类属性 species = "Canis familiaris" # 构造方法 def __init__(self, name, age): self.name = name # 实例属性 self.age = age # 实例方法 def bark(self): print(f"{self.name} 汪汪叫!") # 创建对象 my_dog = Dog("Buddy", 3) my_dog.bark() # Buddy 汪汪叫!2. 继承
class GoldenRetriever(Dog): def __init__(self, name, age, color): super().__init__(name, age) self.color = color # 方法重写 def bark(self): print("温柔的汪汪!") golden = GoldenRetriever("Max", 2, "金色") golden.bark() # 温柔的汪汪!七、异常处理
try: num = int(input("输入数字:")) result = 10 / num except ValueError: print("输入的不是数字!") except ZeroDivisionError: print("不能除以0!") else: print(f"结果是{result}") finally: print("程序执行完毕")八、文件操作
# 写入文件 with open("test.txt", "w") as f: f.write("Hello, Python!") # 读取文件 with open("test.txt", "r") as f: content = f.read() print(content) # Hello, Python!九、模块与包
1. 导入模块
import math print(math.sqrt(16)) # 4.0 from datetime import datetime print(datetime.now()) # 当前时间
2. 自定义模块
- 创建 mymodule.py:
def say_hello(): print("Hello from mymodule!")- 导入使用:
import mymodule mymodule.say_hello()
十、Pythonic技巧
1. 列表推导式
squares = [x**2 for x in range(5)] # [0, 1, 4, 9, 16]
2. 字典推导式
square_dict = {x: x**2 for x in range(3)} # {0:0, 1:1, 2:4}3. 上下文管理器
with open("file.txt", "r") as f: data = f.read() # 自动关闭文件常见错误与规范
- 缩进错误:代码块必须严格对齐。
- 变量未定义:使用前需先赋值。
- 修改不可变对象:如字符串、元组不可修改。
- PEP8规范:
- 每行不超过79字符
- 函数/类之间空两行
- 逗号后加空格
- 导入使用:
- 创建 mymodule.py:
- 可变参数:
- 默认参数:
- while** 循环**:
- for** 循环**:
- 集合(Set):无序、唯一
- 字典(Dict):键值对集合
- 元组(Tuple):有序、不可变
- 列表(List):有序、可变
- 一行写多条语句时用分号 ; 分隔(不推荐,多条语句最好是分行写):
- 正确写法:
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。


