零基础速通 Python 3:从环境搭建到语法实战,1 小时上手

4 阅读13分钟

前言

本文围绕 Python 3 基础语法展开快速梳理与实战上手教学,重点讲解 Windows 系统下的 Python 环境搭建流程,以及核心基础语法的应用要点。通过本文的内容梳理,助力零基础学习者高效掌握 Python 3 入门阶段的核心知识;若需了解完整、详尽的官方规范,可访问 Python 官方网站查阅。

一、环境搭建(Windows 系统)

1. 下载安装包
  • 访问 Python 官方下载页:Python Windows 安装包列表
  • 选择 Python 3.9 及以上版本,下载对应 64 位 / 32 位的 Windows Installer 安装包
2. 安装与基础配置
  • 双击安装包,必须勾选「Add Python 3.x to PATH」(关键步骤,避免后续手动配环境变量)

  • 安装方式选择:

    • 新手推荐:直接点击「Install Now」(默认安装到 C 盘,操作最简单)
    • 自定义路径:点击「Customize installation」,可指定安装路径(如 D:\Python311
  • 点击「Install」,等待界面提示「Setup was successful」即安装完成

3. 验证安装结果
  • 按下 Win+R,输入 cmd 打开命令提示符
  • 输入命令 python --version,若显示 Python 版本号(如 Python 3.11.5),则安装成功
4. 补充:手动配置环境变量(未勾选 PATH 时)

若安装时未勾选「Add Python 3.x to PATH」,需手动配置:

  1. 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」

  2. 在「系统变量」中找到「Path」,点击「编辑」→「新建」,添加两行路径:

    • Python 安装根路径(如 D:\Python311
    • Python 安装路径下的 Scripts 文件夹(如 D:\Python311\Scripts
  3. 保存后重启 cmd,重新执行 python --version 验证

二、特殊问题解决:pip 安装失败处理

pip 是 Python 包管理工具,若安装后无法使用,按以下步骤修复(适配 Python 3.14):

1. 补装 pip
  • 下载脚本:访问 bootstrap.pypa.io/get-pip.py,右键「另存为」到 Python 安装目录(如 C:\pythoncore-3.14-64

  • 执行安装:

    1. cmd 中切换到该目录:cd 你的Python安装路径(如 cd C:\pythoncore-3.14-64
    2. 执行命令:python get-pip.py,完成后会自动生成 Scripts 文件夹(内含 pip.exe)
2. 配置 pip 环境变量
  1. 重复「环境搭建」中手动配环境变量的步骤,在「Path」中新增:

    • Python 安装目录(如 C:\pythoncore-3.14-64
    • 上述目录下的 Scripts 文件夹(如 C:\pythoncore-3.14-64\Scripts
  2. 重启 cmd,输入 pip --version,显示版本号即配置成功

三、核心基础语法

1. 文件后缀

Python 代码文件的后缀为 .py(如 test.py

2. 注释

注释用于标注代码含义,不参与程序执行:

# 单行注释:以 # 开头
print("Hello World")  # 行尾也可加单行注释

# 多行注释:用三单引号/三双引号包裹
'''
这是多行注释第一行
这是多行注释第二行
支持换行,适用于大段说明
'''
"""
双引号版多行注释,功能与单引号一致
按需选择即可
"""
3. 基础数据类型
类型示例代码(修正后规范写法)说明
字符串str = "hello world"用单 / 双引号包裹文本
数字num_int = 1 # 整型``num_float = 0.12 # 浮点型``num_complex = 1+2j # 复数包含整型、浮点型、复数
布尔值bool_true = True``bool_false = False仅 True/False(首字母大写)
列表list_arr = [0, 1, 2, 3, 4]有序、可变的序列
元组tup = ('abcd', 786, 2.23, 'runoob', 70.2)有序、不可变的序列
字典dict_info = {"name":"boyka","age":20,"sex":"man"}键值对结构,无序、可变
集合set_param = {1,2,3,4,5,6}``new_set = set([1,2,3])无序、无重复元素的集合
字节类型b = bytes("boyka", encoding="utf-8")二进制数据类型
4. 判断语句

Python 支持 if-elif-elsematch-case(Python 3.10+ 新增)两种判断方式:

# 方式1:if-elif-else
number_int = "2"
if number_int == "1":
    print("春天")
elif number_int == "2":
    print("夏天")
elif number_int == "3":
    print("秋天")
else:
    print("冬天")

# 方式2:match-case(模式匹配)
x = 2
match x:
    case 1:
        print("春天")
    case 2:
        print("夏天")
    case 3:
        print("秋天")
    case _:  # 匹配所有未命中的情况
        print("冬天")
5. 循环语句
(1)循环控制关键字
  • break:跳出整个循环,终止循环执行
  • continue:跳过当前次循环,直接执行下一次循环
  • pass:空语句,仅占位保持程序结构完整,无实际功能
(2)循环类型
# for 循环(遍历序列/范围)
for i in range(10):  # 遍历 0-9
    print(i)

# while 循环(条件满足时执行)
i = 0
while i < 10:
    print(i)
    i += 1  # 等价于 i = i + 1,避免死循环
6. 函数

函数是可复用的代码块,分为自定义函数和匿名函数:

# 1. 自定义函数
def custom_func(param):
    """自定义函数示例"""
    print("这是一个函数")
    return param  # 返回值

# 调用函数(需传参,或定义默认参数)
result = custom_func("测试参数")
print(result)  # 输出:测试参数

# 2. 匿名函数(lambda):简化简单逻辑的函数定义
add = lambda a, b, c: a + b + c
print(add(1, 2, 3))  # 输出:6
7. 运算符
运算符类型符号 / 关键字示例
算术运算符+、-、*、/、%、//10 // 3 → 3(取整)
比较运算符==、!=、>、<、>=、<=5 == 5 → True
赋值运算符=、+=、-=、*=、/=、%=、//=、:=a := 10(海象赋值)
位运算符&、、^、~、<<、>>6 << 1 → 12(左移)
逻辑运算符and、or、notTrue and False → False
成员运算符in、not in3 in [1,2,3] → True
身份运算符is、is nota is b(判断内存地址)

注:原文比较运算符中「=」是笔误,正确的等于判断是「==」,「=」仅用于赋值。

8. 输入与输出
# 1. 控制台输出
print("hello world")  # 基础输出
print("姓名:%s,年龄:%d" % ("boyka", 20))  # 格式化输出

# 2. 控制台输入(获取用户输入,返回字符串类型)
user_input = input("请输入内容:")
print(f"你输入的是:{user_input}")

# 3. 文件输出(简单示例)
with open("test.txt", "w", encoding="utf-8") as f:
    f.write("写入文件的内容")
9. 数据类型转换

常用转换函数:

  • int():转为整型(如 int("123") → 123
  • float():转为浮点型(如 float(123) → 123.0
  • str():转为字符串(如 str(123) → "123"
  • list():转为列表(如 list((1,2,3)) → [1,2,3]
  • tuple():转为元组(如 tuple([1,2,3]) → (1,2,3)
  • dict():转为字典(如 dict([("name","boyka")]) → {"name":"boyka"}
10. 错误和异常

四、内建方法

1、字符串(str)内建方法

字符串方法主要用于字符串的查找、替换、分割、拼接、大小写转换等,所有方法均不修改原字符串(字符串不可变),返回新字符串。

方法功能说明示例代码输出 / 结果
str.lower()转为小写"Hello World".lower()hello world
str.upper()转为大写"Hello World".upper()HELLO WORLD
str.strip()去除首尾空白(可指定字符)" abc ".strip() / "###abc###".strip("#")abc / abc
str.split(sep)按分隔符分割为列表"a,b,c".split(",")['a', 'b', 'c']
str.join(iter)将可迭代对象拼接为字符串"-".join(['a', 'b', 'c'])a-b-c
str.replace(old, new)替换子串"abc".replace("a", "x")xbc
str.find(sub)查找子串位置,找不到返回 -1"abc".find("b") / "abc".find("x")1 / -1
str.count(sub)统计子串出现次数"ababa".count("a")3
str.startswith(prefix)判断是否以指定前缀开头"abc".startswith("a")True
str.endswith(suffix)判断是否以指定后缀结尾"abc".endswith("c")True
str.format()格式化字符串"姓名:{},年龄:{}".format("张三", 20)姓名:张三,年龄:20

2、数字(int/float)内建方法

Python 数字(整型、浮点型)的内建方法较少,核心是类型转换和数值判断,复数(complex)有专属属性方法:

方法 / 属性功能说明示例代码输出 / 结果
int.bit_length()返回表示整数的二进制位数10.bit_length()(10 的二进制是 1010)4
float.is_integer()判断浮点型是否为整数(如 2.0 是,2.5 否)2.0.is_integer() / 2.5.is_integer()True / False
complex.real复数的实部(属性)(1+2j).real1.0
complex.imag复数的虚部(属性)(1+2j).imag2.0

补充:数字常用内置函数(非对象方法):abs()(绝对值)、round()(四舍五入)、max()/min()(最值)、pow()(幂运算)。

3、列表(list)内建方法

列表是可变序列,方法可直接修改原列表,核心用于增删改查、排序、反转等:

方法功能说明示例代码操作后列表
list.append(x)末尾添加元素lst = [1,2]; lst.append(3)[1,2,3]
list.insert(index, x)指定位置插入元素lst = [1,3]; lst.insert(1, 2)[1,2,3]
list.remove(x)删除第一个匹配的元素lst = [1,2,2,3]; lst.remove(2)[1,2,3]
list.pop(index)删除指定位置元素(默认最后一个),返回该元素lst = [1,2,3]; lst.pop(1)返回 2,列表变为 [1,3]
list.clear()清空列表lst = [1,2]; lst.clear()[]
list.index(x)查找元素第一个匹配的索引[1,2,3].index(2)1
list.count(x)统计元素出现次数[1,2,2,3].count(2)2
list.sort(reverse=False)原地排序(默认升序)lst = [3,1,2]; lst.sort()[1,2,3]
list.reverse()原地反转列表lst = [1,2,3]; lst.reverse()[3,2,1]
list.copy()浅拷贝列表lst = [1,2]; new_lst = lst.copy()new_lst = [1,2]

4、元组(tuple)内建方法

元组是不可变序列,方法极少,仅支持查询类操作:

方法功能说明示例代码输出 / 结果
tuple.index(x)查找元素第一个匹配的索引(1,2,3).index(2)1
tuple.count(x)统计元素出现次数(1,2,2,3).count(2)2

注:元组无增删改方法,若需修改需先转为列表(list(tuple)),操作后再转回元组(tuple(list))。

5、字典(dict)内建方法

字典是键值对结构,方法围绕键、值、键值对的增删改查展开:

方法功能说明示例代码输出 / 结果
dict[key] = value添加 / 修改键值对(基础操作,非方法)d = {"name":"张三"}; d["age"] = 20d = {"name":"张三","age":20}
dict.get(key, default)获取键对应值,无则返回默认值d = {"name":"张三"}; d.get("age", 0)0
dict.pop(key)删除指定键值对,返回对应值d = {"name":"张三"}; d.pop("name")返回 张三,字典变 {}
dict.keys()返回所有键的可迭代对象{"name":"张三","age":20}.keys()dict_keys(['name','age'])
dict.values()返回所有值的可迭代对象{"name":"张三","age":20}.values()dict_values(['张三',20])
dict.items()返回所有键值对的可迭代对象{"name":"张三","age":20}.items()dict_items([('name','张三'),('age',20)])
dict.update(dict2)合并字典(覆盖重复键)d1={"name":"张三"}; d2={"age":20}; d1.update(d2)d1={"name":"张三","age":20}
dict.clear()清空字典d = {"name":"张三"}; d.clear(){}
dict.popitem()删除并返回最后插入的键值对(3.7+)d = {"name":"张三","age":20}; d.popitem()返回 ('age',20),字典变 {"name":"张三"}

6、集合(set)内建方法

集合是无序、无重复元素的结构,方法核心是去重、集合运算(交并差)、增删元素:

方法功能说明示例代码输出 / 结果
set.add(x)添加元素(已存在则无操作)s = {1,2}; s.add(3)s = {1,2,3}
set.remove(x)删除元素(不存在则报错)s = {1,2}; s.remove(2)s = {1}
set.discard(x)删除元素(不存在则无操作,比 remove 安全)s = {1,2}; s.discard(3)s = {1,2}
set.pop()随机删除并返回一个元素(集合无序)s = {1,2,3}; s.pop()随机返回 1/2/3,集合减少对应元素
set.clear()清空集合s = {1,2}; s.clear()set()
set.union(set2)并集(等价于 `s1s2`){1,2}.union({2,3}){1,2,3}
set.intersection(set2)交集(等价于 s1 & s2{1,2}.intersection({2,3}){2}
set.difference(set2)差集(等价于 s1 - s2{1,2}.difference({2,3}){1}

五、 错误和异常

# 函数
def runoob():
    assert 1==1, "1 不等于 1"
# 异常处理
try:
    runoob()
except AssertionError as error:
    print(error)
else:
    try:
        with open('test.txt', encoding='utf-8') as file:
            read_data = file.read()
            print(read_data)
    except FileNotFoundError as fnf_error:
        print(fnf_error)
finally:
    print('这句话,无论异常是否发生都会执行。')

六、常见标准库

Python 3 常见核心模块汇总表

模块分类模块名核心功能描述
系统交互os与操作系统交互:创建 / 删除 / 移动文件 / 目录、访问环境变量、路径处理等
系统交互sys与 Python 解释器交互:获取解释器版本 / 路径、标准输入输出、退出程序、命令行参数
系统交互shutil高级文件操作:递归复制 / 移动目录、文件权限修改、文件压缩 / 解压缩等
系统交互subprocess创建子进程:执行系统命令、调用外部程序、获取命令执行结果 / 状态
时间处理time基础时间处理:获取时间戳、格式化时间、程序计时、线程休眠等
时间处理datetime高级日期时间:处理日期 / 时间对象、时区转换、时间差 / 日期差计算、格式解析
时间处理calendar日历相关:生成日历、判断闰年、获取某月天数、星期计算等
数据计算math基础数学运算:三角函数、对数 / 指数、常数(π/e)、取整 / 绝对值等
数据计算random随机数生成:随机整数 / 浮点数、序列随机选择 / 打乱、随机种子设置等
数据计算statistics统计分析:计算均值 / 中位数 / 方差 / 标准差、众数、分位数等
数据计算numpy数值计算核心:多维数组(ndarray)、矩阵运算、广播机制、线性代数(第三方库)
文本处理re正则表达式:文本匹配 / 搜索 / 替换 / 分割、正则模式编译、分组提取等
文本处理string字符串工具:字符常量(大小写字母 / 数字)、字符串格式化、模板替换、字符判断
文本处理jsonJSON 处理:Python 对象与 JSON 字符串互转(编码 / 解码)、格式化输出 JSON
文本处理csvCSV 文件操作:读取 / 写入 CSV 数据、处理分隔符 / 引号、支持大文件逐行读写
网络编程urllib基础网络请求:URL 解析、发送 HTTP/HTTPS 请求、下载文件、处理响应 / 异常
网络编程requests高级 HTTP 请求:GET/POST/PUT/DELETE 请求、Cookie 管理、会话保持(第三方库)
网络编程socket底层网络通信:TCP/UDP 套接字编程、客户端 / 服务端开发、端口监听 / 数据传输
网络编程smtplib/email邮件发送:smtplib 连接邮件服务器、email 构造邮件内容(正文 / 附件 / 主题)
数据存储picklePython 对象序列化:将任意对象保存为二进制文件、从二进制文件恢复对象
数据存储shelve轻量级持久化存储:以字典形式操作文件,存储 / 读取 Python 对象(基于 pickle)
数据存储sqlite3内置数据库:操作 SQLite 数据库、执行 SQL 语句、事务管理、数据增删改查
并发编程threading多线程编程:创建线程、线程同步(锁 / 信号量)、线程池、守护线程
并发编程multiprocessing多进程编程:创建进程、进程间通信(管道 / 队列)、进程池、避免 GIL 限制
并发编程asyncio异步编程:协程创建 / 运行、事件循环、异步 IO、任务调度(Python 3.4+)
图形界面tkinter内置 GUI:创建窗口、按钮 / 输入框 / 标签等控件、简单图形界面开发
图形界面pyqt5/pyside2高级 GUI:跨平台界面开发、丰富控件、信号与槽机制、界面布局(第三方库)
数据处理pandas数据分析核心:DataFrame/Series 数据结构、数据清洗 / 筛选 / 聚合、文件读写(第三方)
调试 / 日志pdb内置调试器:断点设置、单步执行、查看变量、调试程序错误
调试 / 日志logging日志管理:设置日志级别、输出到文件 / 控制台、日志格式化、多模块日志配置
路径处理pathlib面向对象路径:统一处理不同系统路径、路径拼接 / 判断、文件属性查询(Python 3.4+)
加密解密hashlib哈希算法:计算 MD5/SHA1/SHA256 哈希值、文件校验、密码加密(不可逆)
加密解密base64编码解码:Base64/Base32 编码、二进制数据转文本格式、网络传输数据处理

总结

至此,关于 Python 3 基础入门的内容梳理已全部结束。本文围绕 Windows 系统下 Python 3.9 及以上版本展开讲解,核心涵盖环境搭建(含 pip 安装失败的修复方法)、基础语法、各类数据类型的内建方法,以及常用标准库和第三方库的核心功能,旨在助力零基础学习者快速掌握 Python 入门知识。