跳到主要内容
Python 核心语法详解:变量、流程控制与函数基础 | 极客日志
Python
Python 核心语法详解:变量、流程控制与函数基础 Python 核心语法教程涵盖变量与数据类型、运算符、注释、输入输出、流程控制(条件与循环)、函数定义与调用、数据结构(列表、元组、字典)及文件操作。内容包含动态类型特性、可变不可变类型区别、常用内置函数、标准库模块使用及第三方库安装流程,旨在帮助读者掌握 Python 编程基础并编写自动化脚本。
游戏玩家 发布于 2026/2/6 更新于 2026/6/1 23 浏览Python 核心语法详解
Python 作为一门优雅且强大的编程语言,凭借易上手、用途广的特点,成为很多人入门编程的首选。无论是数据分析、人工智能,还是 Web 开发、自动化脚本,Python 都能胜任。扎实的基础语法是关键,本文将结合系统的语法知识,从简单运算到数据持久化,带你一站式吃透 Python 核心语法。
变量与数据类型:程序的原材料仓库
变量用来装不同类型的数据;数据类型则是数据的标签。Python 不用手动指定数据类型,赋值后会自动识别,即动态类型特性。
常见数据类型及操作
数据类型 定义方式 核心操作 适用场景 整数(int) num = 10 加减乘除、取余(%)、整除(//) 计数、编号等整数场景 浮点数(float) price = 9.9 同整数,注意精度问题 金额、重量等小数场景 字符串(str) name = "Python" 拼接(+)、切片([0:2])、替换(replace) 文本存储与处理 列表(list) nums = [1,2,3] 增(append)、删(pop)、改(nums[0]=0) 存储多个可变数据 元组(tuple) info = ("Tom",20) 只能查,不能改 存储固定不变的数据(如坐标) 字典(dict) student = {"name":"Tom","age":20} 按键取值(student["name"])、增删键值对 存储键值对应的数据 集合(set) s = {1,2,3} 去重、交集(&)、并集( )
在 Python 中,单引号构成的字符串和双引号构成的字符串没有区别。
关键易错点解析
可变 vs 不可变类型 :列表、字典、集合是可变类型;整数、浮点数、字符串、元组是不可变类型。
列表与元组的区别 :元组用小括号,列表用中括号;元组不能修改,列表可以。
字典的键要求 :必须是不可变类型(如字符串、整数),不能用列表当键。
运算符:程序的计算器 + 判断器
核心运算符分类
算术运算符 :+(加)、-(减)、*(乘)、/(除)、%(取余)、//(整除)、**(幂运算)。
除零异常:/、//、%的除数不能为 0。
%求余的正负:结果的正负和被除数一致。
比较运算符 :==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)。
逻辑运算符 :and(与)、or(或)、not(非)。具有短路特性。
赋值运算符 :=、+=、-=、*=、/=。
链式赋值 :a = b = 10。
多元赋值 :x, y = y, x(交换变量)。
成员运算符 :in(在...内)、not in(不在...内)。
注意:Python 没有 ++ 和 -- 运算符,自增 / 自减需用 a += 1 或 a -= 1。
优先级避坑:算术运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符。
注释:代码的笔记本
单行注释 :#开头。
多行注释 :三引号包裹("""或''')。
def calc_sum (a, b ):
''' 计算两个数的和
参数:a -> 第一个数,b -> 第二个数
返回值:a + b 的结果
'''
return a + b
输入输出:程序的交互窗口
输出:print 函数
print ("Hello Python" )
print (10 + 20 )
name = "张三"
age = 20
print ("姓名:" , name, "年龄:" , age)
score = 89.5
print (f"平均分:{score} ,总分:{score * 3 } " )
输入:input() 函数 input()读取用户在控制台输入的内容,返回值永远是字符串类型。
age = input ("请输入你的年龄:" )
age = int (age)
print (f"明年你{age + 1 } 岁" )
score1 = float (input ("请输入第 1 个分数:" ))
score2 = float (input ("请输入第 2 个分数:" ))
score3 = float (input ("请输入第 3 个分数:" ))
score4 = float (input ("请输入第 4 个分数:" ))
avg = (score1 + score2 + score3 + score4) / 4
print (f"4 个分数的平均分为:{avg} " )
流程控制:让程序做选择、重复做
条件语句 根据条件做选择,缩进是关键(通常是 4 个空格)。
if 语句 :单条件。
if-else 语句 :二选一。
if-elif-else 语句 :多条件。
嵌套 :条件语句内部可以再写条件语句。
pass :空语句占位。
year = 2024
if year % 100 == 0 :
if year % 400 == 0 :
print (f"{year} 是闰年" )
else :
print (f"{year} 是平年" )
else :
if year % 4 == 0 :
print (f"{year} 是闰年" )
else :
print (f"{year} 是平年" )
循环语句
while 循环 :条件满足就循环。注意要有让条件变为 False 的语句,否则死循环。
for 循环 :遍历可迭代对象。常用 range() 生成序列。
range(n):0 ~ n-1。
range(start, end):start ~ end-1。
range(start, end, step):步长为 step。
for i in range (1 , 11 ):
print (i)
函数:代码的复用神器
函数的语法 def 函数名 (形参列表):
函数体
[return 返回值]
def :关键字。
return :返回结果,执行到 return 时函数结束。
函数的参数
形参与实参 :个数必须一致。
默认值 :有默认值的参数必须放在无默认值参数的后面。
关键字参数 :显式指定实参传给哪个形参。
函数的返回值
一个函数可以有多个 return 语句,但执行到第一个 return 时结束。
可以返回多个值,接收时用多个变量(或元组)接收。
如果没有 return,默认返回 None。
变量作用域
局部变量 :函数内部定义,出了函数失效。
全局变量 :函数外部定义。函数内部修改全局变量需用 global 声明。
函数的设计原则
单一职责 :一个函数只做一件事。
逻辑与交互分离 :函数内部尽量不做控制台输入输出。
注释清晰 :用文档字符串说明功能。
列表和元组:批量存储数据的容器
列表(List):可变的散装辣条容器 列表是可修改的序列结构,用于批量保存任意类型的数据。
创建列表 alist = [1 , 'hello' , True ]
alist = []
核心操作
访问与修改 :下标从 0 开始,支持负数下标。使用 len() 获取长度。
切片操作 :[start:end:step],前闭后开。
遍历列表 :while 循环、按索引遍历、直接遍历元素。
增删操作 :
新增 :append()(末尾添加)、insert()(指定位置插入)、extend()(合并列表)、+(拼接)。
删除 :remove()(按值)、pop()(按索引或末尾)、del。
查找元素 :index()、in。
alist = [1 , 2 , 3 , 4 ]
alist.append('hello' )
alist.remove(2 )
print (alist.index(3 ))
元组(Tuple):不可变的包装辣条容器 元组创建后不可修改。当数据集需要只读保护时优先使用。
创建 :atuple = (1, 'hello'),单个元素需加逗号 (1,)。
优势 :数据安全(不可变)、可作为字典的 key。
字典:键值对映射的查询表 字典存储键值对(key-value),通过 key 快速查找 value。
key 唯一 ,value 可重复。
key 必须是可哈希对象 (不可变类型),如字符串、整数、元组。
student = {'id' : 1 , 'name' : 'zhangsan' }
student['score' ] = 90
student.pop('score' )
for key, value in student.items():
print (f"{key} : {value} " )
文件:数据持久化的硬盘容器 文件能将数据持久化存储到硬盘。操作遵循'打开→读写→关闭'流程。
文件路径
绝对路径 :从盘符开始,如 D:/test.txt。
相对路径 :以当前程序目录为基准。
文件操作流程
打开文件 :open(文件路径,打开方式,encoding=编码方式)。
读写文件 :
写:write(内容)。
读:read(n)、for line in f、readlines()。
关闭文件 :close() 方法。推荐使用上下文管理器 with 自动关闭。
with open ('D:/test.txt' , 'r' , encoding='utf-8' ) as f:
content = f.read()
print (content)
标准库:Python 自带的工具箱 标准库无需额外安装即可使用。常用模块包括 datetime(时间日期)、math(数学计算)、os(操作系统相关)、json(数据存储)等。
导入模块 import datetime
import os
实战案例 import datetime
date1 = datetime.datetime(2012 , 2 , 14 )
date2 = datetime.datetime(2022 , 7 , 12 )
print (date2 - date1)
字符串内置方法丰富,如 split()、strip()、replace()、format() 等。
import os
inputPath = input ('请输入待搜索路径:' )
pattern = input ('请输入待搜索关键词:' )
for dirpath, dirnames, filenames in os.walk(inputPath):
for f in filenames:
if pattern in f:
print (f'{dirpath} /{f} ' )
第三方库:Python 生态的扩展包
核心使用流程
找库 :搜索引擎查询需求。
安装 :使用 pip install [库名]。
导入使用 :import [库名]。
实战案例 import qrcode
img = qrcode.make('示例内容' )
img.save('qrcode.png' )
import xlrd
xlsx = xlrd.open_workbook('d:/test.xlsx' )
table = xlsx.sheet_by_index(0 )
nrows = table.nrows
for i in range (1 , nrows):
classId = table.cell_value(i, 1 )
if classId == 101 :
score = table.cell_value(i, 2 )
total += score
count += 1
print (f'101 班平均分:{total / count} ' )
本文涵盖了 Python 核心语法的关键知识点,包括变量、运算符、流程控制、函数、数据结构及文件操作。掌握这些基础有助于编写高效的自动化脚本和数据处理程序。
相关免费在线工具 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
HTML转Markdown 将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
JSON 压缩 通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online