跳到主要内容Python 入门教程:从基础语法到面向对象编程详解 | 极客日志PythonAI
Python 入门教程:从基础语法到面向对象编程详解
本文详细介绍了 Python 编程语言的基础知识,涵盖快速入门、语法约定、数据类型、运算符、控制流、函数、面向对象编程、模块包、输入输出及执行环境等核心章节。内容包含代码示例与概念解析,旨在帮助初学者系统掌握 Python 编程技能,适用于 Web 开发、数据分析及自动化运维等场景的学习参考。
Python 入门教程
Python 是一门开源免费、通用型的脚本编程语言,它上手简单,功能强大,坚持「极简主义」。Python 类库(模块)极其丰富,这使得 Python 几乎无所不能,不管是传统的 Web 开发、PC 软件开发、Linux 运维,还是当下火热的机器学习、大数据分析、网络爬虫,Python 都能胜任。
本教程力求口语化和通俗化,让读者尽快入门。如果你出于兴趣学习 Python,请阅读前半部分基础内容;如果你想全面掌握 Python 编程,胜任企业中的实际项目开发,请按顺序学习所有章节。
第一章 Python 快速入门
1. 运行 Python
安装 Python 后,可以通过命令行输入 python 或 python3 进入交互模式。也可以编写 .py 文件使用 IDLE 或 VS Code 等编辑器运行。
2. 变量和表达式
Python 是动态类型语言,变量无需声明即可赋值。变量名只能包含字母、数字和下划线,且不能以数字开头。
name = "Alice"
age = 25
height = 1.75
is_student = True
3. 条件语句
使用 if, elif, else 进行逻辑判断。注意缩进表示代码块。
score = 85
if score >= 90:
print("优秀")
elif score >= 60:
print("及格")
else:
print("不及格")
4. 文件输入/输出
使用 open() 函数读写文件。推荐使用 with 语句自动管理资源关闭。
with open('test.txt', 'w', encoding='utf-8') as f:
f.write('Hello File')
with open('test.txt', 'r', encoding='utf-8') as f:
content = f.read()
5. 字符串
支持单引号、双引号及三引号。三引号可用于多行文本。支持切片、拼接和格式化。
s = "Python"
print(s.upper())
print(f"Length: {len(s)}")
6. 列表和元组 (Lists & Tuples)
列表可变,元组不可变。列表常用于存储同类数据集合。
lst = [1, 2, 3]
tup = (1, 2, 3)
lst.append(4)
7. 循环
for 用于遍历序列,while 用于条件循环。结合 break 和 continue 控制流程。
for i in range(5):
print(i)
i = 0
while i < 5:
print(i)
i += 1
8. 字典
d = {'key': 'value'}
d['new_key'] = 100
9. 函数
使用 def 定义。支持默认参数、可变参数 (*args, **kwargs) 和返回值。
def add(a, b=0):
return a + b
10. 类
class Dog:
def __init__(self, name):
self.name = name
def bark(self):
print("Woof")
11. 异常
使用 try-except 捕获错误,避免程序崩溃。可自定义异常类。
try:
1 / 0
except ZeroDivisionError:
print("除零错误")
finally:
print("执行完毕")
12. 模块
使用 import 导入标准库或第三方库。模块是组织代码的基本单位。
import math
print(math.sqrt(16))
第二章 语法及代码约定
1. 行结构/缩进
Python 强制使用缩进来表示代码块,通常使用 4 个空格。Tab 和空格混用会导致 IndentationError。
2. 标识符及保留字
标识符由字母、数字、下划线组成,区分大小写。关键字如 if, for, class 不可用作变量名。
3. 数字/文字
支持整数、浮点数、复数。字符串是不可变的字符序列。
4. 运算符、分隔符及特殊符号
包括算术运算符 (+, -, *, /, %, //, **)、比较运算符 (==, !=, >, <) 和逻辑运算符 (and, or, not)。
5. 文档字符串
使用三引号 """ 在函数或类定义首行添加说明,可通过 __doc__ 访问。
第三章 类型和对象
1. 术语
2. 对象的标识与类型
使用 id() 获取内存地址,type() 获取类型。
3. 引用计数与垃圾收集
Python 使用引用计数机制管理内存,配合垃圾回收器处理循环引用。
4. 引用与副本
浅拷贝只复制第一层,深拷贝递归复制所有层级。使用 copy 模块。
5. 内建类型
包括 int, float, str, list, tuple, dict, set, bool 等。
6. 特殊方法
如 __init__, __str__, __len__ 等,用于定义对象行为。
7. 性能及内存占用
列表比元组稍慢但更灵活。字典查找快但占用内存较多。
第四章 运算符与表达式
1. 数值操作
2. 序列运算
支持切片 [start:end:step]、拼接 + 和重复 *。
3. 字典的操作
支持 keys(), values(), items() 以及合并操作 | (Python 3.9+)。
4. 增量赋值语句
5. 属性 (.) 操作符
6. 类型转换
使用 int(), float(), str(), list() 等进行显式转换。
7. Unicode 字符串
Python 3 默认使用 Unicode,支持中文及其他国际字符。
8. 布尔表达式
非零、非空、非 None 视为真。True 和 False 是布尔类型。
9. 对象的比较与身份
10. 运算优先级
括号最高,其次是幂运算,然后是乘除,最后是加减。逻辑运算符中 not > and > or。
第五章 控制流
1. 条件语句
2. 循环
3. 异常
try-except-else-finally 完整结构。
4. 定义新的异常
5. 断言和 _debug
使用 assert 检查条件,sys._debug 控制调试信息。
第六章 函数与函数编程
1. 函数
2. 参数传递和返回值
位置参数、关键字参数、默认参数。返回多个值通过元组实现。
3. 作用域规则
遵循 LEGB 原则 (Local, Enclosing, Global, Built-in)。
4. 递归
5. apply() 函数
Python 2 常用,Python 3 中通常直接使用函数调用。
6. lambda 操作符
7. map, zip, reduce, filter
8. 列表内涵
9. eval, exec, compile
第七章 类及面向对象编程
1. class 语句
2. 访问类属性
3. 类实例
4. 引用记数与实例销毁
5. 继承
6. 多态
7. 数据隐藏
8. 操作符重载
9. 类,类型,和成员检测
使用 isinstance, hasattr, getattr。
第八章 模块和包
1. 模块
2. 模块搜索路径
3. 模块导入和汇编
import, from ... import ...。
4. 重新导入模块
5. 包
第九章 输入输出
1. 读取参数及环境变量
2. 文件
3. 标准输入,标准输出和标准错误
4. print 语句
5. 对象持久化
6. Unicode I/O
第十章 执行环境
1. 解释器选项及运行环境
2. 交互模式
3. 运行 Python 程序
4. Site 配置文件
5. 启用 Future 特性
from __future__ import ...。
6. 程序终止
结语
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。建议先掌握基础语法,再深入特定领域如数据分析或 Web 开发。持续练习是提升的关键。
相关免费在线工具
- RSA密钥对生成器
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
- Mermaid 预览与可视化编辑
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
- curl 转代码
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
- Base64 字符串编码/解码
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
- Base64 文件转换器
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
- Markdown转HTML
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online