Python 基础语法汇总

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个空格 )代替大括号 {} 表示代码块。
  • 错误示例
python 复制代码
if True:
print("错误!")  # 缩进不一致会报错
  • 正确写法
python 复制代码
if True:
    print("缩进正确!")  # 必须缩进4个空格
2. 注释
  • 单行注释 :以 # 开头。
  • 多行注释 :用三引号 """''' 包裹。
python 复制代码
# 这是单行注释
"""
这是多行注释
可以写多行内容
"""
3. 语句分隔
  • 一行写多条语句时用分号 ; 分隔(不推荐,多条语句最好是分行写):
python 复制代码
a = 5; b = 10; print(a + b)
4. 变量命名
  • 规则:字母/数字/下划线组成,不能以数字开头。
  • 区分大小写:nameName 是不同变量。
  • 命名惯例:
    • 小写+下划线(如 user_name)。
    • 类名用大驼峰(如 ClassName)。

二、数据类型与操作

1. 基本数据类型
类型 示例 说明
int 5, -3 整数
float 3.14, -2.5 浮点数
str "Hello", 'Python' 字符串
bool True, False 布尔值
NoneType None 空值
2. 复合数据类型
  • 列表(List):有序、可变
python 复制代码
nums = [1, 2, 3]
nums[0] = 10  # 修改元素
  • 元组(Tuple):有序、不可变
python 复制代码
point = (10, 20)
# point[0] = 5  # 报错!
  • 字典(Dict):键值对集合
python 复制代码
user = {"name": "Alice", "age": 25}
print(user["name"])  # Alice
  • 集合(Set):无序、唯一
python 复制代码
unique_nums = {1, 2, 2, 3}  # 自动去重 → {1, 2, 3}
3. 类型转换
python 复制代码
a = int("10")    # 字符串转整数 → 10
b = float(5)     # 整数转浮点数 → 5.0
c = str(3.14)    # 浮点数转字符串 → "3.14"
d = list("abc")  # 字符串转列表 → ['a', 'b', 'c']

三、运算符

1. 算术运算符
python 复制代码
print(5 + 3)   # 加法 → 8
print(5 ** 2)  # 幂运算 → 25
print(10 % 3)  # 取模 → 1
2. 比较运算符
python 复制代码
print(3 > 2)   # True
print(5 == 5.0)  # True(值相等)
print(5 is 5.0)  # False(对象不同)
3. 逻辑运算符
python 复制代码
print(True and False)  # False
print(not True)        # False
4. 成员运算符
python 复制代码
nums = [1, 2, 3]
print(2 in nums)    # True
print(4 not in nums) # True

四、流程控制

1. 条件语句
python 复制代码
age = 18
if age < 13:
    print("儿童")
elif age < 18:
    print("青少年")
else:
    print("成年人")
2. 循环语句
  • for** 循环**:
python 复制代码
for i in range(3):  # 输出0,1,2
    print(i)

# 遍历列表
fruits = ["apple", "banana"]
for fruit in fruits:
    print(fruit)
  • while** 循环**:
python 复制代码
count = 0
while count < 3:
    print(count)
    count += 1  # 必须手动更新条件
3. 循环控制
python 复制代码
# 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. 定义与调用
python 复制代码
def greet(name):
    """返回问候语(文档字符串)"""
    return f"Hello, {name}!"

print(greet("Alice"))  # Hello, Alice!
2. 参数传递
  • 默认参数
python 复制代码
def power(base, exp=2):
    return base ** exp

print(power(3))    # 9 (exp默认为2)
print(power(3, 3)) # 27
  • 可变参数
python 复制代码
def sum_all(*args):
    return sum(args)

print(sum_all(1, 2, 3))  # 6
3. Lambda函数
python 复制代码
square = lambda x: x ** 2
print(square(5))  # 25

六、面向对象编程(OOP)

1. 类与对象
python 复制代码
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. 继承
python 复制代码
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()  # 温柔的汪汪!

七、异常处理

python 复制代码
try:
    num = int(input("输入数字:"))
    result = 10 / num
except ValueError:
    print("输入的不是数字!")
except ZeroDivisionError:
    print("不能除以0!")
else:
    print(f"结果是{result}")
finally:
    print("程序执行完毕")

八、文件操作

python 复制代码
# 写入文件
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. 导入模块
python 复制代码
import math
print(math.sqrt(16))  # 4.0

from datetime import datetime
print(datetime.now())  # 当前时间
2. 自定义模块
  • 创建 mymodule.py
python 复制代码
def say_hello():
    print("Hello from mymodule!")
  • 导入使用:
python 复制代码
import mymodule
mymodule.say_hello()

十、Pythonic技巧

1. 列表推导式
python 复制代码
squares = [x**2 for x in range(5)]  # [0, 1, 4, 9, 16]
2. 字典推导式
python 复制代码
square_dict = {x: x**2 for x in range(3)}  # {0:0, 1:1, 2:4}
3. 上下文管理器
python 复制代码
with open("file.txt", "r") as f:
    data = f.read()  # 自动关闭文件

常见错误与规范

  1. 缩进错误:代码块必须严格对齐。
  2. 变量未定义:使用前需先赋值。
  3. 修改不可变对象:如字符串、元组不可修改。
  4. PEP8规范
    • 每行不超过79字符
    • 函数/类之间空两行
    • 逗号后加空格

相关推荐
Susea&33 分钟前
数据结构初阶:队列
c语言·开发语言·数据结构
慕容静漪36 分钟前
如何本地安装Python Flask并结合内网穿透实现远程开发
开发语言·后端·golang
ErizJ38 分钟前
Golang|锁相关
开发语言·后端·golang
GOTXX42 分钟前
【Qt】Qt Creator开发基础:项目创建、界面解析与核心概念入门
开发语言·数据库·c++·qt·图形渲染·图形化界面·qt新手入门
搬砖工程师Cola1 小时前
<C#>在 .NET 开发中,依赖注入, 注册一个接口的多个实现
开发语言·c#·.net
巨龙之路1 小时前
Lua中的元表
java·开发语言·lua
徐行1101 小时前
C++核心机制-this 指针传递与内存布局分析
开发语言·c++
划水哥~1 小时前
Kotlin作用域函数
开发语言·kotlin
小臭希1 小时前
python蓝桥杯备赛常用算法模板
开发语言·python·蓝桥杯
mosaicwang2 小时前
dnf install openssl失败的原因和解决办法
linux·运维·开发语言·python