一、你已经有了一张非常好的底牌
你可能已经跟着前端和后端零基础入门写了不少 JavaScript 代码——浏览器里的 DOM 操作、Node.js 里的 Express 服务、MySQL 数据库的增删改查。你已经掌握了一门语言的核心能力:变量、函数、对象、条件判断、循环、异步处理。
现在学 Python,不是一个“从零开始学编程”的过程,而是一个“用已知的编程思维,去掌握一门新语言”的过程。你已经知道了程序是怎么运行的、函数是什么、API 是什么、数据库是什么。Python 只是换了一种写法来表达同样的逻辑。
这意味着:你学 Python 会比完全零基础的人快得多。 很多概念你已经理解了,只需要知道 Python 里对应的语法怎么写。
二、Python 到底是什么
Python 是一门解释型、动态类型、面向对象的编程语言。这些词听起来很学术,拆开来看:
- 解释型:代码不需要先编译成机器码,而是由 Python 解释器一行一行地读取和执行。这跟 JavaScript 在浏览器里的运行方式很像——JS 引擎也是解释执行的。
- 动态类型:变量不需要声明类型,同一个变量可以先存数字,再存字符串。这也跟 JavaScript 一样。
- 面向对象:Python 里的一切都是对象——数字是对象,字符串是对象,函数也是对象。这也跟 JavaScript 一致。
你看,Python 的底层哲学和你已经熟悉的 JavaScript 有很多相似之处。你并不是进入了一个完全陌生的世界。
三、Python 和 JavaScript 的核心区别
虽然两者都是动态语言,但它们的“性格”很不一样。理解这些区别,能让你更快地适应 Python 的思维方式。
1. 语法风格:缩进 vs 花括号
这是最直观的区别。JavaScript 用花括号 {} 来标记代码块:
// JavaScript
if (score >= 60) {
console.log('及格了');
} else {
console.log('不及格');
}
Python 没有花括号,用缩进来标记代码块:
# Python
if score >= 60:
print('及格了')
else:
print('不及格')
在 Python 里,缩进不是可选的风格问题,而是语法要求。缩进不对,程序直接报错。这迫使所有人写的代码都有统一的视觉结构,阅读起来很干净。
2. 语句结尾:没有分号
JavaScript 语句可以用分号结尾(也可以不写,但推荐写):
let name = '张三';
Python 语句不需要分号,直接换行就表示语句结束:
name = '张三'
3. 变量声明:没有 let/const/var
JavaScript 里声明变量需要关键字:
let age = 28;
const name = '张三';
Python 不需要任何关键字,直接赋值就创建了变量:
age = 28
name = '张三'
4. 注释:井号代替双斜杠
// JavaScript 单行注释
/* JavaScript 多行注释 */
# Python 单行注释
'''
Python 多行注释
用三个引号包裹
'''
5. Python 的设计哲学:做一件事只有一种最好的方式
JavaScript 很灵活,同一个功能可以有多种写法(回调、Promise、async/await 都能处理异步)。Python 社区有一个信条:“做一件事应该只有一种明显的方式。”所以 Python 的语法更统一、更克制。你去看不同人写的 Python 代码,风格差异比 JavaScript 小得多。
四、Python 擅长什么
学一门语言最怕的是“学完不知道能干什么”。Python 的应用场景非常明确,以下是它最强势的领域:
- Web 后端开发:Django 和 Flask 是两个主流框架。Instagram 的后端就是用 Django 写的。Python 写后端的体验和 Node.js 类似,但生态偏重不同的场景。
- 网络爬虫:用 requests + BeautifulSoup 可以轻松抓取网页数据。Python 是爬虫领域的王者,没有之一。
- 数据分析与可视化:Pandas 处理表格数据、Matplotlib 画图表。Python 是数据科学家最常用的语言。
- 人工智能与机器学习:TensorFlow、PyTorch、Scikit-learn——几乎所有 AI 框架都首选 Python。
- 自动化脚本:批量重命名文件、自动发邮件、操作 Excel——Python 写这类小工具非常快。
- 接口测试与运维:很多测试框架和运维工具都基于 Python。
作为一个前端/Node.js 开发者,学 Python 最实际的收益是:用 Python 做那些 JavaScript 不太擅长的事情,比如爬虫、数据分析、自动化处理。同时,你也会多一门后端语言的选择。
五、安装 Python
第 1 步:下载 Python
打开浏览器,访问 https://www.python.org/downloads/。网页会自动识别你的操作系统,推荐最新版本。点击那个黄色的下载按钮即可。
重要提醒:在安装界面的第一页,一定要勾选底部的 “Add Python to PATH”(把 Python 添加到系统路径)。如果不勾选,安装后在终端里输入 python 会提示找不到命令,还得手动配置环境变量,非常麻烦。
勾选后,点击 Install Now,等待安装完成。
第 2 步:验证安装
打开终端:
- Windows:按
Win + R,输入cmd,回车。 - Mac:在“启动台”里找到“终端”。
输入:
python --version
如果出现类似 Python 3.12.0 的版本号,说明安装成功。如果提示找不到命令,试试 python3 --version(某些 Mac 系统上 python 指向的是旧版 Python 2)。
第 3 步:进入 Python 交互环境
在终端里直接输入:
python
终端提示符会变成 >>>,这表示你已经进入了 Python 的交互模式。在这里你可以直接输入 Python 代码,敲回车就立即执行:
>>> 1 + 1
2
>>> print('你好')
你好
>>> exit()
输入 exit() 退出交互模式。这个交互模式相当于浏览器里的 Console 控制台,是快速试验代码片段的最佳场所。
六、你的第一段 Python 代码
和学任何语言一样,从最经典的“Hello World”开始。这次不只是输出一行字,我们把 Python 最基础的几个操作都试一遍。
第 1 步:创建一个 Python 文件
在电脑上新建一个文件夹,比如桌面上的 python-learn。用 VS Code 打开这个文件夹。
新建一个文件,命名为 hello.py。注意后缀是 .py,不是 .txt。
第 2 步:写代码
在 hello.py 里输入以下内容:
# 我的第一个 Python 程序
# 1. 输出一段文字
print('你好,欢迎来到 Python 的世界!')
# 2. 变量和运算
name = '张三'
age = 28
print(name + '今年' + str(age) + '岁') # 数字不能直接和字符串拼接,需要转成字符串
# 3. 列表(相当于 JavaScript 的数组)
fruits = ['苹果', '香蕉', '橘子']
print('我喜欢的水果有:' + str(fruits))
# 4. 条件判断
score = 85
if score >= 60:
print('及格了')
else:
print('不及格')
# 5. 循环
for i in range(1, 4):
print('这是第' + str(i) + '次循环')
第 3 步:运行
在 VS Code 里按 Ctrl + ` 打开终端,输入:
python hello.py
你会看到以下输出:
你好,欢迎来到 Python 的世界!
张三今年28岁
我喜欢的水果有:['苹果', '香蕉', '橘子']
及格了
这是第1次循环
这是第2次循环
这是第3次循环
恭喜!你已经写出了第一段完整的 Python 程序。
七、逐行解释这段代码
现在我们来逐行理解上面这段代码,同时也和你熟悉的 JavaScript 做对比。
注释
# 我的第一个 Python 程序
Python 的注释用井号 #。JavaScript 用 //。功能完全一样:给人看的说明文字,解释器会跳过。
print()
print('你好,欢迎来到 Python 的世界!')
print() 是 Python 内置的输出函数,相当于 JavaScript 的 console.log()。字符串可以用单引号或双引号包裹,和 JS 一样。
变量
name = '张三'
age = 28
Python 声明变量不需要 let、const、var。直接写变量名,用等号赋值。Python 会根据值自动判断类型。
字符串拼接
print(name + '今年' + str(age) + '岁')
Python 用 + 拼接字符串,和 JS 一样。但是有一个重要区别:Python 不允许直接拼接字符串和数字。你必须用 str() 把数字转成字符串。JS 会隐式转换('今年' + 28 自动得到 '今年28'),Python 不会——它会报错。这体现了 Python 的哲学:显式优于隐式,不让类型转换偷偷发生。
列表
fruits = ['苹果', '香蕉', '橘子']
Python 的列表相当于 JavaScript 的数组。语法完全一样,用方括号。访问元素也用 fruits[0]。
条件判断
if score >= 60:
print('及格了')
else:
print('不及格')
关键区别:
- Python 的条件后面跟冒号
:。 - 条件判断的代码块用缩进(通常是 4 个空格)表示,而不是花括号。
- 没有小括号包裹条件(写了也没错,但通常不写)。
else if在 Python 里写作elif。
循环
for i in range(1, 4):
print('这是第' + str(i) + '次循环')
for...in 是 Python 最常用的循环方式。range(1, 4) 生成从 1 开始、到 3 结束的整数序列(不包括 4)。所以 i 依次取 1、2、3。这和 JS 的 for (let i = 1; i < 4; i++) 效果相同。
八、Python 和 JavaScript 语法速查表
这张表总结了你目前需要知道的最常见语法差异:
| 功能 | JavaScript | Python |
|---|---|---|
| 打印输出 | console.log('hello') |
print('hello') |
| 变量声明 | let x = 10 |
x = 10 |
| 常量 | const PI = 3.14 |
PI = 3.14(约定大写表示常量,实际仍可改) |
| 单行注释 | // 注释 |
# 注释 |
| 代码块 | { } 花括号 |
缩进 |
| 条件判断 | if (x > 0) { } |
if x > 0: |
| 多分支 | else if |
elif |
| 数组/列表 | [1, 2, 3] |
[1, 2, 3] |
| 循环 | for (let i=0; i<5; i++) |
for i in range(5): |
| 字符串拼接 | 'a' + 1(隐式转换) |
'a' + str(1)(必须显式转换) |
九、你可能遇到的几个小问题
问题一:缩进错误
如果你不小心多敲了一个空格或者少敲了一个空格,会看到类似这样的错误:
IndentationError: unexpected indent
这是 Python 在告诉你“你的缩进不对”。检查代码块里的每一行缩进是否一致。惯例是用 4 个空格 作为一级缩进。VS Code 默认按 Tab 键会插入 4 个空格,不需要手打空格。
问题二:忘记冒号
在 if、else、for 后面必须加冒号。如果忘了:
SyntaxError: invalid syntax
Python 会告诉你语法错误。检查上一行末尾有没有冒号。
问题三:数字和字符串直接拼接
TypeError: can only concatenate str (not "int") to str
这个错误的意思是“你试图把数字拼接到字符串上”。用 str() 把数字转成字符串。
十、本篇动手练习
练习 1:修改变量并输出
新建 practice1.py,声明三个变量:你的名字、年龄、所在城市。然后用 print() 把它们拼成一句完整的话输出。
练习 2:条件判断练习
新建 practice2.py,声明一个变量 temperature = 30。写一段 if/elif/else 判断:
- 大于 35 度:输出“高温预警”
- 在 25 到 35 之间:输出“天气较热”
- 小于 25 度:输出“天气舒适”
练习 3:循环练习
新建 practice3.py,用 for 循环输出 1 到 10 的乘法表(1 × 1 = 1, 1 × 2 = 2, … 只做 1 到 3 的即可)。提示:可以用嵌套循环或简单的 for 循环。
练习 4:列表操作
新建 practice4.py,创建一个包含 5 种你喜欢的食物的列表。用 print 输出整个列表,再用 for 循环逐个输出每样食物。
十一、本篇小结
这一篇你完成了 Python 的入门第一步:
- Python 是什么:一门解释型、动态类型、面向对象的语言,和 JavaScript 有很多相似之处。
- 和 JavaScript 的区别:缩进代替花括号、没有分号、变量不需要声明关键字、数字不能直接拼接到字符串、注释用井号。
- Python 的强项:爬虫、数据分析、AI、自动化脚本、Web 后端。
- 安装 Python:从官网下载,安装时勾选 Add Python to PATH。
- 交互模式:在终端输入
python进入,可以实时测试代码片段。 - 第一个 Python 程序:变量、print、列表、条件判断、循环——基本语法全覆盖。
你已经用 Python 写出了第一个完整的程序。下一篇,我们深入 Python 的数据类型和运算符——字符串、数字、布尔值的详细操作,以及 Python 中特有的运算符(如 // 整除、** 幂运算)。
下一篇预告
下一篇——《Python 语法基础:变量、数据类型、输入输出》:详细讲解 Python 的变量命名规则、数字和字符串的所有常用操作、如何获取用户输入、格式化输出的多种方式。每一小节都会和 JavaScript 做对比,让你快速上手。
Python 零基础入门,每周更新。













暂无评论内容