news 2026/4/19 1:15:14

【Python基础20讲】第01章:Python 环境搭建与第一个程序

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Python基础20讲】第01章:Python 环境搭建与第一个程序

博主智算菩萨,专注于人工智能、Python编程、音视频处理及UI窗体程序设计等方向。致力于以通俗易懂的方式拆解前沿技术,从零基础入门到高阶实战,陪伴开发者共同成长。目前已开设五大技术专栏,累计发布多篇原创技术文章,深受读者好评。

📌 专栏导航

  • 人工智能前沿知识:深度剖析Transformer架构、生成式AI、强化学习、具身智能、神经符号系统、大模型及智能体(Agent)技术,系统性解析AI核心技术体系与前沿趋势。
  • Python基础小白编程:从零开始,以保姆式教程讲解变量、数据类型、流程控制、函数等核心语法,配有大量实战代码与避坑指南,真正做到学以致用。
  • 机器学习与深度学习:系统化拆解线性模型、决策树、随机森林、梯度提升树、神经网络等算法原理与工程实践,覆盖从公式推导到代码实现的全链路内容。
  • 音频、图像与视频处理理论与实战:涵盖FFmpeg多媒体处理、audio_shop开源工具、ComfyUI-WanVideoWrapper视频生成等实用技术,从基础操作到高级应用一应俱全。
  • UI窗体程序设计实战:深入讲解UI设计、动态窗体生成、游戏UI框架设计等实战技巧,提供从配置到编码的完整解决方案。
    智算菩萨,以代码为经,以算法为纬,在人工智能的星辰大海中,做你前行路上最可靠的导航者。

1.1 Python 语言概述

Python 是由荷兰程序员 Guido van Rossum 于 1989 年圣诞节期间开始设计,1991 年首次发布的解释型高级编程语言。它的名字来源于英国喜剧团体 Monty Python,而非蟒蛇。Python 的设计哲学强调代码的可读性和简洁性,其核心理念可以通过import this查看(即"Python 之禅"),其中最重要的几条包括:优美胜于丑陋、明确胜于隐晦、简单胜于复杂、可读性很重要。

Python 有两个主要版本:Python 2 和 Python 3。Python 2 于 2020 年 1 月 1 日正式停止维护,目前所有新项目都应使用 Python 3。本教程基于 Python 3.10+ 编写,代码在 Python 3.12/3.13 上测试通过。

Python 的主要特点可以概括为以下几点。第一,它是解释型语言,不需要编译即可运行,开发效率高。第二,它是动态类型语言,变量不需要预先声明类型。第三,它支持多种编程范式,包括面向对象、函数式和过程式编程。第四,它拥有极其丰富的标准库和第三方生态系统,被称为"自带电池"的语言。第五,它的语法简洁优雅,使用缩进而非花括号来表示代码块。

1.2 Python 环境安装

Python 的官方下载地址是 https://www.python.org/,国内用户推荐使用清华大学镜像站 https://mirrors.tuna.tsinghua.edu.cn/python/ 加速下载。安装时务必勾选"Add Python to PATH"选项,否则在命令行中无法直接使用 python 命令。

安装完成后,在命令行中输入以下命令验证安装是否成功:

python --version pip --version

如果显示版本号,说明安装成功。pip是 Python 的包管理工具,用于安装和管理第三方库。国内使用 pip 安装包时,推荐使用镜像源加速:

pip install 包名 -i https://pypi.tuna.tsinghua.edu.cn/simple

对于项目开发,建议使用虚拟环境(venv)来隔离不同项目的依赖,避免版本冲突:

python -m venv myenv # 创建虚拟环境 source myenv/bin/activate # Linux/Mac 激活 myenv\Scripts\activate # Windows 激活

1.3 第一个 Python 程序

Python 程序的执行方式有两种:交互式和脚本式。交互式模式下,在命令行输入python进入解释器,每输入一行代码按回车即可看到结果,适合快速测试。脚本式模式下,将代码保存为.py文件,通过python 文件名.py执行,适合编写完整的程序。

第一个程序永远是 Hello World。在 Python 中,只需要一行代码:

print("Hello, World!")

print()是 Python 最基本的输出函数,它将括号中的内容输出到标准输出(通常是屏幕)。与 C 语言的printf或 Java 的System.out.println相比,Python 的print不需要分号结尾,不需要指定数据类型,也不需要写main函数——这就是 Python 简洁性的体现。

1.4 print() 函数详解

print()函数的完整语法为print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)。其中最常用的参数是sepend

sep参数控制多个输出对象之间的分隔符,默认是一个空格。例如print("2026", "04", "16", sep="-")输出2026-04-16end参数控制输出结束后的字符,默认是换行符\n。例如print("Hello", end=" ")输出后不换行,光标停留在空格后面。

1.5 注释

注释是代码中不被解释器执行的说明性文字,用于提高代码的可读性。Python 的单行注释以#号开头,#号后面的所有内容都被忽略。多行注释可以使用三引号"""..."""'''...'''包裹,但严格来说这是文档字符串(docstring),Python 解释器并不会忽略它——它会被存储为对象的__doc__属性。如果只是想写多行注释,更规范的做法是每行都加#号。

注释的最佳实践包括:解释"为什么"而非"是什么"(代码本身应该能说明是什么);保持注释与代码同步更新;避免无意义的注释(如i = i + 1 # i 加 1)。

1.6 输入函数 input()

input()函数从标准输入读取一行文本,返回值始终是字符串类型。如果需要数字,必须进行类型转换。例如age = int(input("请输入年龄: "))int()函数将字符串转换为整数。如果用户输入的不是有效数字,程序会抛出ValueError异常。

1.7 格式化输出

Python 提供了三种字符串格式化方式。第一种是 f-string(格式化字符串字面量),Python 3.6 引入,语法为f"...",在花括号{}中可以直接写表达式,是最推荐的写法。第二种是str.format()方法,用{}作为占位符。第三种是%格式化,继承自 C 语言的 printf 风格,已不推荐在新代码中使用。

f-string 支持丰富的格式控制:{value:.2f}保留两位小数,{value:>10}右对齐宽度 10,{value:<10}左对齐,{value:^10}居中对齐,{value:*<10}*填充,{value:,}千分位分隔,{value:b}二进制,{value:x}十六进制,{value:%}百分比。

1.8 Python 的缩进规则

Python 使用缩进来表示代码块,而不是 C/Java 中的花括号{}。同一代码块中的语句必须保持相同的缩进量,通常使用 4 个空格(不要混用 Tab 和空格)。缩进错误是初学者最常见的语法错误之一。Python 之禅中说"扁平胜于嵌套",建议避免过深的缩进层次。

完整代码

""" 第01章:Python 环境搭建与第一个程序 演示 Python 环境信息、基本输入输出、注释风格 """importsysimportplatform# ============================================================# 1. Python 环境信息# ============================================================print("="*50)print(" Python 环境信息")print("="*50)print(f"Python 版本:{sys.version}")print(f"平台:{platform.system()}{platform.release()}")print(f"架构:{platform.machine()}")print(f"解释器路径:{sys.executable}")# ============================================================# 2. 第一个程序:Hello World# ============================================================print("\n"+"="*50)print(" Hello World")print("="*50)# print 是最基本的输出函数print("Hello, World!")print("你好,Python!")# sep 参数控制分隔符,默认是空格print("2026","04","16",sep="-")print("姓名","年龄","城市",sep=" | ")# end 参数控制结尾字符,默认是换行print("第一行",end=" ")print("第二行")print("第三行",end="!!!\n")# ============================================================# 3. 注释风格# ============================================================print("\n"+"="*50)print(" 注释风格")print("="*50)# 这是单行注释,# 号后面的内容不会被执行""" 这是多行注释(文档字符串) 可以跨越多行 常用于函数、类、模块的说明文档 """# 这也是多行注释的写法(用 # 代替)print("注释不会影响程序运行")# ============================================================# 4. 基本输入# ============================================================print("\n"+"="*50)print(" 基本输入(模拟)")print("="*50)# input() 函数从标准输入读取一行文本# 在自动化运行时,我们用模拟数据代替simulated_input="Python 学习者"name=simulated_input# 等价于 name = input("请输入你的名字: ")print(f"欢迎你,{name}!")# input() 返回的始终是字符串,需要类型转换age_str="25"age=int(age_str)# 字符串转整数print(f"你今年{age}岁,十年后你将{age+10}岁")# ============================================================# 5. print 的格式化输出# ============================================================print("\n"+"="*50)print(" 格式化输出")print("="*50)name="张三"age=28score=95.678# 方法一:f-string(Python 3.6+,推荐)print(f"姓名:{name}, 年龄:{age}, 成绩:{score:.2f}")# 方法二:format() 方法print("姓名: {}, 年龄: {}, 成绩: {:.1f}".format(name,age,score))# 方法三:% 格式化(旧式)print("姓名: %s, 年龄: %d, 成绩: %.2f"%(name,age,score))# f-string 的高级用法pi=3.14159265print(f"π ={pi:.4f}")# 保留 4 位小数print(f"π ={pi:>10.4f}")# 右对齐,宽度 10print(f"π ={pi:<10.4f}")# 左对齐print(f"π ={pi:^10.4f}")# 居中对齐print(f"{'OK':*>10}")# 用 * 填充print(f"二进制:{42:b}")# 二进制print(f"八进制:{42:o}")# 八进制print(f"十六进制:{42:x}")# 十六进制print(f"千分位:{1000000:,}")# 千分位分隔# ============================================================# 6. 简单的计算器# ============================================================print("\n"+"="*50)print(" 简单计算器")print("="*50)a,b=15,4print(f"a ={a}, b ={b}")print(f"加法: a + b ={a+b}")print(f"减法: a - b ={a-b}")print(f"乘法: a * b ={a*b}")print(f"除法: a / b ={a/b}")print(f"整除: a // b ={a//b}")print(f"取余: a % b ={a%b}")print(f"幂运算: a ** b ={a**b}")print("\n[第01章] 全部示例运行完毕")

实验日志

以下是运行上述代码后的实际输出:

================================================== Python 环境信息 ================================================== Python 版本: 3.13.4 (tags/v3.13.4:8a526ec, Jun 3 2025, 17:46:04) [MSC v.1943 64 bit (AMD64)] 平台: Windows 11 架构: AMD64 解释器路径: C:\Program Files\Python313\python.exe ================================================== Hello World ================================================== Hello, World! 你好,Python! 2026-04-16 姓名 | 年龄 | 城市 第一行 第二行 第三行!!! ================================================== 注释风格 ================================================== 注释不会影响程序运行 ================================================== 基本输入(模拟) ================================================== 欢迎你,Python 学习者! 你今年 25 岁,十年后你将 35 岁 ================================================== 格式化输出 ================================================== 姓名: 张三, 年龄: 28, 成绩: 95.68 姓名: 张三, 年龄: 28, 成绩: 95.7 姓名: 张三, 年龄: 28, 成绩: 95.68 π = 3.1416 π = 3.1416 π = 3.1416 π = 3.1416 ********OK 二进制: 101010 八进制: 52 十六进制: 2a 千分位: 1,000,000 ================================================== 简单计算器 ================================================== a = 15, b = 4 加法: a + b = 19 减法: a - b = 11 乘法: a * b = 60 除法: a / b = 3.75 整除: a // b = 3 取余: a % b = 3 幂运算: a ** b = 50625 [第01章] 全部示例运行完毕

本章小结

本章介绍了 Python 语言的基本概况、环境安装方法、第一个程序的编写、print()input()函数的用法、三种字符串格式化方式以及 Python 的缩进规则。这些是学习 Python 的第一步,后续章节将在此基础上逐步深入。需要特别注意的是:input()返回的始终是字符串,进行数学运算前必须进行类型转换;f-string 是 Python 3.6+ 推荐的格式化方式,语法简洁且功能强大。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/19 1:15:12

【Python基础20讲】第17章:正则表达式

博主智算菩萨&#xff0c;专注于人工智能、Python编程、音视频处理及UI窗体程序设计等方向。致力于以通俗易懂的方式拆解前沿技术&#xff0c;从零基础入门到高阶实战&#xff0c;陪伴开发者共同成长。目前已开设五大技术专栏&#xff0c;累计发布多篇原创技术文章&#xff0c;…

作者头像 李华
网站建设 2026/4/19 1:10:14

AI编程革命:Codex如何高效生成自动化脚本

核心主题与价值以Codex&#xff08;如GitHub Copilot&#xff09;等AI编程助手为核心&#xff0c;探讨如何高效生成脚本代码&#xff0c;避免重复劳动。突出自动化、智能提示、代码复用等优势。技术背景与现状分析传统脚本编写痛点&#xff1a;手动编码效率低、重复逻辑多、调试…

作者头像 李华
网站建设 2026/4/19 1:04:43

golang如何使用embed嵌入文件_golang embed嵌入文件使用解析

go:embed 只能嵌入编译时存在、路径固定且在当前包内的只读文件&#xff1b;路径须严格匹配大小写与相对位置&#xff0c;* 不递归、** 递归但不包含空目录&#xff1b;需用 http.FS() 转换类型才能用于 http.FileServer。go:embed 只能嵌入编译时就存在的、路径固定的只读文件…

作者头像 李华
网站建设 2026/4/19 1:00:45

性能提升的真相|WebGPU 到底能让 Highcharts 快多少?

在Highcharts 12.6版本中&#xff0c;Highcharts 引入了对 WebGPU 的支持。 关于浏览器支持的说明&#xff1a; WebGPU目前尚未在所有现代浏览器中普遍支持。在上线之前&#xff0c;查看Can I Use WebGPU表格以了解最新情况。要开始使用&#xff0c;可以将modules/contour.js与…

作者头像 李华