Python 是一种广泛应用的编程语言,具有简洁、易读、功能强大等特点。本文将对 Python 的基础知识进行全面梳理,涵盖从入门必备知识到各类模块和编程概念等内容。
一、Python基础语法
(一)标识符
-
定义:用于给变量、函数、类等命名。
-
规则:由字母、数字和下划线组成,不能以数字开头,区分大小写。
-
特殊标识符:
-
单下划线开头(如
_xxx
):表示不能直接访问的类属性。 -
双下划线开头(如
__xx
):表示私有成员。 -
双下划线开头和结尾(如
__init__
):表示Python内置的特殊方法。
-
(二)关键字
-
常用关键字:
-
exec
:执行字符串中的Python语句。 -
assert
:测试条件,条件为假时抛出异常。 -
raise
:抛出异常。 -
del
:删除变量。 -
with
:常用于文件操作。 -
lambda
:匿名函数。 -
yield
:使函数可以在循环中迭代。
-
(三)引号
-
单引号(')、双引号(")、三引号('''或"""):
-
用于定义字符串。
-
三引号可以包含多行文本。
-
(四)编码
-
Python 2:默认编码为ASCII,需手动指定编码(如UTF-8)。
-
Python 3:默认编码为UTF-8。
二、输入输出与数据类型
(一)输入输出
-
缩进:用缩进来表示代码块,而不是
{}
。
-
输入输出:
-
多行语句:用
\
将语句分多行,或使用括号[]、{}、()
。
-
注释:单行注释用
#
,多行注释用三引号。
(二)数据类型
-
整数:任意大小,包含负数。
-
浮点数:小数。
-
字符串:用单引号、双引号或三引号定义。
-
布尔值:
True
和False
。 -
空值:用
None
表示。 -
变量:可变。
-
常量:不可变。
三、运算符与基本语句
(一)运算符
-
常用运算符:加(
+
)、减(-
)、乘(*
)、除(/
)、取余(%
)等。 -
优先级:遵循数学运算规则(先乘除后加减)。
(二)基本语句
-
条件语句:
-
if
、elif
、else
用于逻辑判断。
-
-
循环语句:
-
for
循环:遍历序列(如字符串、列表)。
-
-
while
循环:满足条件时重复执行。
-
break
:终止循环。
-
continue
:跳过当前循环。
-
pass
:空语句,占位符。
四、数值类型与数学运算
(一)数值类型
-
整型(int):正整数和负整数。
-
浮点型(float):包含小数部分。
-
复数(complex):由实数和虚数组成。
(二)数学运算
-
基本运算:加、减、乘、除、乘方(
**
)等。 -
数学模块:
math
模块提供高级数学运算,如sqrt()
、sin()
、cos()
等。 -
随机函数:random。
五、字符串操作
(一)字符串定义
-
使用单引号、双引号或三引号定义。
(二)基本操作
-
访问字符:通过索引访问单个字符或切片访问范围内的字符。
-
转义字符:使用反斜杠
\
。
-
格式化:
-
使用
%
格式化字符串(如"%s"
、"%d"
)。 -
使用
format()
方法(如"Hello {0}"
)。
-
六、序列、列表与元组
(一)序列
-
定义:连续内存空间,按顺序排列。
-
操作:
-
索引访问(正索引从0开始,负索引从-1开始)。
-
切片操作(
seq[start:end]
)。 -
相加(
+
)和相乘(*
)。
-
(二)列表
-
特点:可变,可存储不同类型的数据。
-
操作:
-
创建:
[1, 2, 3]
。 -
访问:通过索引或切片。
-
更新:使用
append()
、extend()
等方法。 -
删除:使用
del
或remove()
。
-
(三)元组
-
特点:不可变,常用于固定数据。
-
操作:
-
创建:
(1, 2, 3)
。 -
访问:与列表类似。
-
修改:需重新赋值。
-
删除:只能删除整个元组。
-
七、字典与集合
(一)字典
-
特点:键值对结构,键不可重复。
-
操作:
-
创建:
{"key": "value"}
。 -
访问:通过键访问值。
-
更新:直接覆盖键对应的值。
-
删除:使用
del
或pop()
。
-
(二)集合
-
特点:无序,元素不可重复。
-
操作:
-
创建:
{1, 2, 3}
或set()
。 -
添加:使用
add()
或update()
。 -
删除:使用
remove()
或discard()
。 -
清空:使用
clear()
。
-
八、时间模块与日期处理
(一)time
模块
-
功能:提供时间相关的函数。
-
常用方法:
-
time.time()
:获取当前时间戳。 -
time.sleep()
:暂停程序执行。
-
(二)datetime
模块
-
功能:处理日期和时间。
-
常用类:
-
datetime.date
:表示日期。 -
datetime.time
:表示时间。 -
datetime.datetime
:表示日期和时间。
-
-
方法:
-
datetime.now()
:获取当前日期和时间。 -
date.today()
:获取当前日期。
-
(三)calendar
模块
-
功能:生成日历。
-
常用方法:
-
calendar.month()
:生成某月的日历。 -
calendar.TextCalendar()
:生成文本日历。
-
九、函数与模块
(一)函数
-
定义:使用
def
关键字。
-
参数:
-
普通参数、默认参数、不定长参数(
*args
、**kwargs
)。
-
-
匿名函数:使用
lambda
定义。
(二)模块
-
定义:
.py
文件。 -
导入:
-
import module
。 -
from module import function
。
-
-
标准库:如
math
、random
、os
等。
(三)包
-
定义:文件夹,包含
__init__.py
(Python 3.3后可省略)。 -
创建:在文件夹中放置模块文件。
-
导入:使用
import package.module
。
十、面向对象编程
(一)类与对象
-
类:描述具有相同属性和方法的对象集合。
-
对象:类的实例。
-
定义:使用
class
关键字。 -
构造方法:
__init__()
,在实例化时自动调用。
(二)封装
-
私有属性:在属性名前加
__
,外部无法直接访问。 -
访问:通过类方法访问私有属性。
(三)继承
-
单继承与多继承:子类继承父类的属性和方法。
-
重写:子类可以覆盖父类的方法。
(四)多态
-
定义:父类引用可以指向子类对象。
-
优势:提高程序的扩展性和灵活性。
十一、文件操作
(一)打开文件
-
使用
open()
函数:-
参数:文件路径、模式(
r
、w
、a
等)。 -
示例:
open("file.txt", "r")
。
-
(二)读写文件
-
读取:
read()
、readline()
、readlines()
。 -
写入:
write()
、writelines()
。 -
关闭:使用
close()
或with
语句自动关闭。
(三)文件定位
-
使用
seek()
和tell()
方法。
十二、异常处理
(一)异常类型
-
常见异常:
SyntaxError
、ValueError
、IOError
等。 -
基类:
BaseException
和Exception
。
(二)异常处理
-
try-except:捕获并处理异常。
-
示例:
Python复制
try:# 可能引发异常的代码 except Exception as e:print(e)
-
-
else:无异常时执行。
-
finally:无论是否异常,都会执行。
(三)抛出异常
-
使用
raise
关键字抛出自定义异常。
十三、迭代器与生成器
(一)迭代器
-
定义:具有
__iter__()
和__next__()
方法的对象。 -
作用:可以记住遍历的位置。
(二)生成器
-
定义:使用
yield
关键字的函数。 -
特点:按需生成值,节省内存。
十四、装饰器
(一)闭包
-
定义:引用了自由变量的函数。
-
特点:可以保留外部变量的状态。
(二)装饰器
-
功能:在不修改函数代码的情况下,增加函数功能。
-
使用:通过
@decorator
语法。
十五、其他重要模块
(一)os
模块
-
功能:操作文件和目录。
-
常用方法:
-
os.getcwd()
:获取当前路径。 -
os.listdir()
:列出目录内容。 -
os.mkdir()
:创建目录。
-
(二)sys
模块
-
功能:与Python解释器交互。
-
常用属性:
-
sys.argv
:命令行参数。 -
sys.version
:Python版本信息。
-
(三)random
模块
-
功能:生成随机数。
-
常用方法:
-
random.random()
:生成[0, 1)范围内的随机浮点数。 -
random.randint(a, b)
:生成[a, b]范围内的随机整数。
-
(四)argparse
模块
-
功能:处理命令行参数。
-
特点:自动生成帮助信息。
(五)正则表达式
-
模块:
re
。 -
功能:强大的字符串处理工具。
-
常用方法:
-
re.search()
:搜索匹配项。 -
re.findall()
:查找所有匹配项。 -
re.sub()
:替换字符串。
-
十六、总结
Python的基础知识涵盖了从语法到高级特性的方方面面。无论是标识符、关键字、数据类型,还是面向对象、异常处理、模块与包,每一个知识点都是构建Python程序的基石。希望这份总结能帮助你更好地掌握Python的核心概念,提升编程能力。如果你对某个部分还有疑问,欢迎留言交流!
👏觉得文章对自己有用的宝子可以收藏文章并给小编点个赞!
👏想了解更多统计学、数据分析、数据开发、数据治理、机器学习算法、深度学习等有关知识的宝子们,可以关注小编,希望以后我们一起成长!