Python 基础语法速查手册:从入门到精通

news2025/5/25 11:17:51


Python 作为最受欢迎的编程语言之一,以其简洁易读的语法和强大的功能吸引了大量开发者。本文全面汇总 Python 基础语法知识,帮助初学者快速掌握核心概念,并为后续深入学习打下坚实基础。


1. Python 基础语法结构

1.1 代码结构与缩进规则

Python 最显著的特点就是使用缩进来表示代码块,而不是像其他语言那样使用大括号。官方推荐使用 4 个空格进行缩进:

if True:
    print("这是缩进4个空格的代码块")  # 正确
    print("同一代码块保持相同缩进")   # 正确

以下是不规范的写法:

if True:
print("没有缩进")  # 会报IndentationError

代码注释有两种形式:

  • 单行注释:使用 #
  • 多行注释:使用三引号 '''"""
# 这是单行注释

'''
这是多行注释
可以跨越多行
'''

1.2 变量与基本数据类型

Python 是动态类型语言,变量不需要声明类型:

counter = 100          # 整型
miles = 999.0          # 浮点型
name = "Python"        # 字符串

变量命名规则:

  • 只能包含字母、数字和下划线
  • 不能以数字开头
  • 区分大小写
  • 不能使用关键字(如 if, for 等)

常见数据类型示例:

# 数字类型
a = 10         # int
b = 3.14       # float 
c = 3+4j       # complex

# 字符串操作
s = "Hello"
print(s[1])    # 输出 'e'
print(s + " World")  # 字符串拼接

# 布尔运算
x = True
y = False
print(x and y)  # False

2. 流程控制语句

2.1 条件判断(if-elif-else)

基本语法结构:

score = 85

if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")  # 这里会执行
elif score >= 60:
    print("及格")
else:
    print("不及格")

三元运算符简化条件判断:

age = 20
status = "成年" if age >= 18 else "未成年"
print(status)  # 输出"成年"

2.2 循环结构

for 循环示例:

# 遍历列表
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

# 使用range
for i in range(5):     # 0到4
    print(i)

while 循环示例:

count = 0
while count < 5:
    print(count)
    count += 1  # 不要忘记更新条件变量

循环控制语句:

for num in range(10):
    if num == 3:
        continue  # 跳过本次循环
    if num == 8:
        break    # 终止循环
    print(num)

3. 函数与模块

3.1 函数定义与调用

基本函数定义:

def greet(name):
    """这是一个问候函数"""
    return f"Hello, {name}!"

print(greet("Alice"))  # 输出: Hello, Alice!

参数传递方式:

# 位置参数
def power(x, n):
    return x ** n

# 关键字参数
print(power(n=3, x=2))  # 8

3.2 模块化编程

导入模块示例:

import math
print(math.sqrt(16))  # 4.0

from random import randint
print(randint(1, 100))  # 随机数

创建自定义模块:

  1. 创建 mymodule.py 文件
  2. 写入函数定义
  3. 在其他文件中 import mymodule 使用

4. 数据结构进阶

4.1 列表(List)与元组(Tuple)

列表操作示例:

colors = ["red", "green", "blue"]

# 增删改查
colors.append("yellow")  # 添加
colors.remove("green")   # 删除
colors[0] = "orange"    # 修改

# 列表推导式
squares = [x**2 for x in range(10)]

元组是不可变序列:

dimensions = (1920, 1080)
# dimensions[0] = 1280  # 会报错,元组不可修改

4.2 字典(Dict)与集合(Set)

字典操作:

person = {
    "name": "Alice",
    "age": 25,
    "city": "New York"
}

print(person["name"])  # 访问
person["job"] = "Engineer"  # 添加

集合特性:

a = {1, 2, 3}
b = {3, 4, 5}

print(a | b)  # 并集 {1, 2, 3, 4, 5}
print(a & b)  # 交集 {3}

5. 文件操作与异常处理

5.1 文件读写

安全读写文件:

# 使用with自动关闭文件
with open("example.txt", "w") as f:
    f.write("Hello, World!")

with open("example.txt", "r") as f:
    content = f.read()
    print(content)

5.2 异常处理机制

完整异常处理示例:

try:
    num = int(input("请输入数字: "))
    result = 10 / num
except ValueError:
    print("请输入有效数字!")
except ZeroDivisionError:
    print("不能除以零!")
else:
    print(f"结果是: {result}")
finally:
    print("程序执行完毕")

6. 总结

本文涵盖了 Python 基础语法的核心内容:

  • 基础语法结构与数据类型
  • 流程控制语句
  • 函数与模块化编程
  • 常用数据结构
  • 文件操作与异常处理

推荐练习项目:

  1. 简易计算器
  2. 待办事项列表
  3. 单词频率统计器

进阶学习方向:

  • 面向对象编程

  • 常用第三方库(NumPy、Pandas)

  • Web 开发框架(Django、Flask)

    print(f"结果是: {result}")
    finally:
    print(“程序执行完毕”)


---

## 6. 总结

本文涵盖了 Python 基础语法的核心内容:
- 基础语法结构与数据类型
- 流程控制语句
- 函数与模块化编程
- 常用数据结构
- 文件操作与异常处理

推荐练习项目:
1. 简易计算器
2. 待办事项列表
3. 单词频率统计器

进阶学习方向:
- 面向对象编程
- 常用第三方库(NumPy、Pandas)
- Web 开发框架(Django、Flask)

掌握这些基础知识后,你已经具备了继续探索 Python 更高级特性的坚实基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2385308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

论文阅读笔记——Emerging Properties in Unified Multimodal Pretraining

BAGEL 论文 商业闭源系统与学术/开源模型的差距很大&#xff0c;BAGEL 旨在通过开源统一架构大规模交错数据主要解决&#xff1a; 架构割裂&#xff1a;理解/生成分属两条网络&#xff0c;信息被压缩在少量条件 token 中&#xff0c;长上下文推理受限。数据贫乏&#xff1a;主…

JAVA批量发送邮件(含excel内容)

EmailSenderHtmlV1 是读取配置文件《批量发送邮件.xlsx》&#xff0c;配置sheet获取 发件人邮箱 邮箱账号 口令&#xff0c;发送excel数据sheet获取收件人邮箱 抄送人邮箱 邮件标题 第N行开始(N>1,N0默认表头) 第M行结束(M>1,M0默认表头) 附件文件夹…

Linux(Ubuntu)新建文件权限继承问题

当你在一个工作目权限为777的文件下&#xff0c;新建一个文件的时候&#xff0c;就有可能发生&#xff0c;新建的这个文件&#xff0c;权限和其他文件&#xff0c;或者工作目录不一致的问题&#xff0c;我们不可能每次新建一个文件&#xff0c;就要 sudo chmod -R 777 /PATH 所…

Java中的String的常用方法用法总结

1.1 String &#xff08;1&#xff09;声明 &#xff08;2&#xff09;字符串常量 存储字符串数据的容器&#xff1a;private final char value[] 字符串常量都存储在字符串常量池&#xff08;StringTable&#xff09;中 字符串常量池不允许存放两个相同的字符串常量 &#xff…

QGIS如何打开 ARCGIS的mxd工程文件

“SLYR”是一款由著名开源组织“北路开源”开发的一套QGIS兼容和转换ARCGIS样式、工程、设置信息的插件&#xff01;其主要功能为&#xff1a; 最近项目需要&#xff0c;我使用了一些功能&#xff0c;发现其对中文环境及中文信息支持不太好&#xff0c;还有一些其它BUG&#xf…

基于微信小程序的智能问卷调查系统设计与实现(源码+定制+解答)基于微信生态的问卷管理与数据分析系统设计

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

React 如何封装一个可复用的 Ant Design 组件

文章目录 前言一、为什么需要封装组件&#xff1f;二、 仿antd组件的Button按钮三、封装一个可复用的表格组件 (实战)1. 明确需求2. 设计组件 API3. 实现组件代码4. 使用组件 三、封装组件的最佳实践四、进阶优化 总结 前言 作为一名前端开发工程师&#xff0c;在日常项目中&a…

Canvas SVG BpmnJS编辑器中Canvas与SVG职能详解

Canvas详解与常见API 一、Canvas基础 核心特性 • 像素级绘图&#xff1a;Canvas是基于位图的绘图技术&#xff0c;通过JavaScript操作像素实现图形渲染&#xff0c;适合动态、高性能场景&#xff08;如游戏、数据可视化&#xff09;。 • 即时模式&#xff1a;每次绘制需手动…

dify多实例部署,一台机器部署多个dify实例

dify多实例部署 目的 实现在一台机器上&#xff0c;部署多个dify的实例。比如一个部署1.2版本&#xff0c;一个部署1.3版本。废话没有&#xff0c;直接上干货。 前提 你的电脑已经部署了一个dify实例&#xff0c;并成功运行。比如已经部署成功0.15.3版本。 步骤如下&#…

ML 48.机器学习之临床生存树(rpartSurv)

简介机器学习中生存树&#xff08;Survival Tree&#xff09;的原理详解 生存树是结合决策树与生存分析的机器学习模型&#xff0c;主要用于处理带有时间-事件数据&#xff08;包含删失数据&#xff09;的预测问题。其核心目标是&#xff1a;通过树状结构对数据进行递归分割&am…

HarmonyOS 应用开发,如何引入 Golang 编译的第三方 SO 库

本指南基于笔者临时修复的 ohos_golang_go 项目fork&#xff0c;解决HO 应用导入 cgo编译产物时的 crash 问题。 1. 下载 ohos_golang_go git clone https://gitcode.com/deslord/ohos_golang_go.git&#x1f4cc; 该仓库为笔者临时修复版本&#xff0c;修复了 CGO 编译模式下…

一体化雷达波明渠流量计简介

一、技术定义与核心原理 一体化雷达波明渠流量计是基于微波技术的全自动流量监测设备&#xff0c;采用 24G K 波段平面雷达技术&#xff0c;通过非接触式测量方式实现对明渠、河道、排水管网等场景的水位、流速及流量监测。其核心原理是利用雷达发射高频电磁波&#xff0c;经水…

Pr -- 耳机没有Pr输出的声音

问题 很久没更新视频号了&#xff0c;想用pr剪辑一下&#xff0c;结果使用Pr打开后发现耳机没有Pr输出的声音 解决方法 在编辑--首选项-音频硬件中设置音频硬件的输出为当前耳机设备

白皮精读:2024年国家数据基础设施建设指引【附全文阅读】

《国家数据基础设施建设指引》提出建设覆盖数据采集至安全全链条的新型基础设施,目标到 2029 年形成横向联通、纵向贯通的格局,聚焦数据可信流通、算力协同、高速传输、安全保障四大功能,明确技术架构与重点方向,强调政府与市场协同,分阶段推进试点及规模化部署,为数字中…

穿屏技巧:Mac-Windows一套鼠标键盘控制多台设备 (sharemouse6.0-Keygen)| KM-401A

文章目录 引言I sharemouse6.0介绍功能介绍关闭自动更新安装包II 安装系统对应的sharemouse软件Windowsmac版本III 知识扩展:SCP、FTP、SSH文件传输SCP配置SSH密钥免密登录FTP(File Transfer Protocal,文件传输协议)引言 基于USB进行同步键盘和鼠标事件,更流畅。 基于局域…

【写在创作纪念日】基于SpringBoot和PostGIS的各省东西南北四至极点区县可视化

目录 前言 一、空间检索简介 1、空间表结构 2、四至空间检索 二、前后端实现 1、后端实现 2、前端集成 三、成果展示 1、东部省份 2、西部省份 3、南部省份 4、北部省份 5、中部省份 四、总结 前言 在当今数字化时代&#xff0c;地理信息数据的分析与可视化对于众…

如何制作可以本地联网搜索的MCP,并让本地Qwen3大模型调用搜索回答用户问题?

环境: SearXNG Qwen3-32B-FP8 vllm 0.8.5 问题描述: 如何制作可以本地联网搜索的MCP,并让本地Qwen3大模型调用搜索回答用户问题? 解决方案: 一、安装searxng 1.按需新建模型相关文件夹 mkdir MCP chmod 777 /mnt/program/MCP2.配置conda源 nano ~/.condarc nano…

服务器硬盘虚拟卷的处理

目前的情况是需要删除逻辑卷&#xff0c;然后再重新来弄一遍。 数据已经备份好了&#xff0c;所以不用担心数据会丢失。 查看服务器的具体情况 使用 vgdisplay 操作查看服务器的卷组情况&#xff1a; --- Volume group ---VG Name vg01System IDFormat …

一个国债交易策略思路

该国债交易策略的核心在于通过分析历史价格数据来识别市场趋势&#xff0c;并在趋势确认时进行开仓操作。策略的设计思路结合了价格波动范围的计算和市场波动性的评估&#xff0c;旨在捕捉市场的短期趋势并控制风险。 首先&#xff0c;策略通过对过去5根K线的最高价和最低价进行…

【三维重建】【3DGS系列】【深度学习】3DGS的理论基础知识之如何形成高斯椭球

【三维重建】【3DGS系列】【深度学习】3DGS的理论基础知识之如何形成高斯椭球 文章目录 【三维重建】【3DGS系列】【深度学习】3DGS的理论基础知识之如何形成高斯椭球前言高斯函数一维高斯多维高斯 椭球基本定义一般二次形式 3D高斯椭球3D高斯与椭球的关系各向同性(Isotropic)和…