简介:本文面向大学阶段零基础学习者,系统梳理Python入门的关键环节:开发环境与编辑器选择、镜像加速、第一个程序、函数定义与返回值、变量与常用数据类型、浮点数精度陷阱与Decimal精准计算,并附复合赋值等实用简写技巧,帮助你少踩坑、快上手,建立扎实的编程起点。
对大多数大学生而言,Python 是接触编程的最佳起点之一:语法接近自然语言、无需编译、标准库开箱即用。这份讲义按照“环境搭建 → 第一个程序 → 函数 → 变量与数据类型 → 精度问题 → 简写技巧”的顺序,把入门阶段最容易踩的坑逐一讲清。读完本文,你应当能够独立配置环境、运行程序、看懂并写出简单函数,并对变量类型与浮点数精度建立正确认知。
Python 是解释型语言,源代码必须交给解释器逐行执行,因此第一步是安装解释器。推荐通过 Python 官方网站下载最新稳定版安装包;如果下载速度不理想,国内多所高校与主流云厂商都维护着开源软件镜像站,同样可以获取安装包,后续安装第三方库时也能起到加速作用。安装时记得勾选“将 Python 加入系统环境变量”,否则在命令行中无法直接启动解释器。
常见的写代码工具可分为四类,推荐程度从高到低:
补充一点:如果暂时不想在本地安装任何软件,也可以使用浏览器中的在线运行环境,这类云端开发能力如今已较为普遍,打开网页即可练习语法。
新建一个文件,输入下面这行代码并运行:
print("Hello World")
控制台输出 Hello World,说明环境配置成功。运行方式有两种:一是交互式环境,输入一行立即得到一行结果,适合做小实验;二是脚本方式,把代码保存为 .py 文件后整体运行,适合正式程序。初学阶段建议两种方式结合使用。
函数是完成特定功能的代码块,理解函数要抓住两个核心概念:
print("Hello World") 中,字符串 "Hello World" 就是参数,print 把它打印到控制台。print 只负责“打印”这个动作,本身没有返回值(严格来说返回 None);而数学模块中的 sqrt()、floor() 则是带返回值的函数——sqrt(9) 会把计算结果 3.0 交回来。要使用带返回值的函数所产生的结果,惯例是用一个变量接收:
import mathc = math.sqrt(9)print(c) # 3.0print(math.floor(3.7)) # 3
使用模块中的函数前,需要先通过 import 导入该模块。Python 中常用的函数有 print()、math.sqrt()、math.floor() 等,后续会结合具体场景逐一展开。
def 函数名(传入参数):函数体return 返回值 # 没有就不写
对这个格式做逐项拆解:def 是定义函数的关键字;函数名建议用小写字母加下划线组合,做到见名知义;参数写在括号内,多个参数用逗号分隔;冒号与统一缩进共同界定函数体的范围——Python 用缩进表达代码层级,这是它区别于许多语言的显著特征;return 语句把结果交回调用方,若函数只执行动作、不产出结果,可以省略 return,此时函数默认返回 None。
一个最小示例:
def add(x, y):return x + yresult = add(2, 3)print(result) # 5
Python 声明变量时无需标注类型,这就是所谓的“动态类型”;但变量所持有的数据依然有明确的类型,用 type() 可以随时查看:
x = 3print(type(x)) # <class 'int'>
实践中有一条重要建议:尽量保证一个变量名从头到尾只存储同一种类型。让同一变量时而存数字、时而存字符串,不仅容易在运行时触发类型错误,也会显著降低代码的可读性。
str:字符与字符串类型,用引号包裹;int:整数类型,且支持超长整数,位数只受内存限制,不必担心溢出;float:浮点数,即小数类型。当零散的变量不足以管理大量数据时,就需要集合类型(列表、字典等)来批量存储,这属于下一阶段的学习内容。
a = 2.2b = 1.1print(a + b)
运行这段程序,输出并不是 3.3,而是 3.3000000000000003。原因在于:计算机以二进制存储浮点数(遵循 IEEE 754 双精度标准),而绝大多数十进制小数无法被二进制精确表示——就像十进制无法精确写出 1/3 一样,误差由此产生。这不是 Python 的缺陷,几乎所有主流编程语言都存在同样的现象。
涉及金额、财务等对精度敏感的场景,应改用标准库中的 Decimal 类型:
from decimal import Decimala = Decimal("2.2")b = Decimal("1.1")print(a + b) # 3.3
两个细节需要注意:其一,构造 Decimal 时应传入字符串,直接传浮点数会把已经产生的二进制误差一并带入;其二,Decimal 的运算开销比 float 大,科学计算、图形处理等场景一般继续使用 float,只有“结果必须精确”的场景才切换到 Decimal。
当运算和赋值针对同一个变量时,可以把两步合并成一步,减少重复、提升可读性:
a = 10a = a + 5 # 常规写法a += 5 # 等价简写
同一家族的简写运算符还有 -=、*=、/=、%=、//=,分别对应减、乘、除、取余、整除。特别提醒:/= 的结果一定是浮点数,例如 x = 10 执行 x /= 4 得到 2.5 而不是 2,需要整数结果时应使用 //=。养成使用简写的习惯,能让代码更紧凑,也让意图更清晰。
入门阶段的核心任务只有三件事:把环境跑通、理解函数的参数与返回值、认清变量的类型与浮点数的精度边界。把这三件事做扎实,后续的集合类型、控制流等进阶内容都只是在此基础上的自然延伸。祝学习顺利。