当前位置:首页>python>Python零基础学习

Python零基础学习

  • 2026-06-30 23:20:35
Python零基础学习

第二篇:第一次亲密接触——运行你的第一行Python代码(完全版)

写在前面:这一篇会带你走过什么

亲爱的读者,欢迎来到第二篇。

上一篇我们聊了Python是什么、为什么学它、它能做什么。你可能已经跃跃欲试,但也可能心存疑虑:

· “我连编程是什么都不太清楚,能行吗?”
· “安装软件听起来好可怕,会不会把电脑搞坏?”
· “命令行?那是黑客用的东西吧?”

这一篇,我会把所有这些疑虑一一消除。

读完这一篇,你将能够:

· 在三种不同的环境下运行Python代码(在线、Windows、Mac)
· 理解每一条命令在做什么,而不是机械地照抄
· 学会“安全地犯错”——编程中最重要的技能之一
· 知道遇到问题时的解决思路(而不是慌张)

我会用最慢的节奏、最多的细节、最啰嗦的解释。如果你觉得“这里太简单了”,可以快速跳过;但如果你觉得“这里我没懂”,说明我写得还不够清楚——欢迎停下来反复读,或者动手试试看。

让我们开始吧。

---

第一章:先忘掉“编程”这个词

1.1 编程的本质,用做菜来理解

在接触任何代码之前,我想先帮你建立一种思维方式。

想象你在厨房里做一道番茄炒蛋。你需要:

1. 知道菜谱(算法)
2. 准备食材(数据)
3. 按照步骤操作(执行)

编程几乎一模一样:

· 菜谱 = 程序(一系列指令的集合)
· 食材 = 数据(数字、文字、列表等)
· 厨具 = 编程语言(Python就是一套厨具)
· 灶台 = 计算机(执行指令的地方)

你现在要做的,不是成为米其林大厨,而是学会看懂并写下最简单的菜谱——“煎一个鸡蛋”“烧一壶水”那个难度。

Python就是一套非常友好的厨具,它的说明书(语法)接近日常英语,所以学起来比其他“厨具”(比如C++、Java)要轻松得多。

1.2 一个程序的生命周期

当你“写一个程序”时,实际发生了这些事情:

```
你写代码 → 保存文件 → Python解释器读取 → 计算机执行 → 输出结果
```

用做菜类比:

```
你写菜谱 → 把菜谱放在灶台边 → 厨师(Python)看懂并执行 → 菜出锅
```

整个学习过程中,你只需要关注第一步和最后一步——中间的事情,Python会帮你搞定。

---

第二章:最快的起跑线——在线环境(无需安装)

如果你现在就想看到“自己写的代码跑起来”,这一章就是为你准备的。完全不需要安装任何东西,只需要一个浏览器。

2.1 什么是“在线环境”?

在线环境就是一个网页,里面内置了一个“虚拟的电脑”,专门用来运行Python代码。你在这个网页里写代码,点击运行,立刻看到结果。

优点:

· 零安装、零配置
· 手机、平板、图书馆电脑都能用
· 不用担心搞坏任何东西

缺点:

· 需要网络
· 功能有限(但足够学完基础知识)
· 无法保存文件到本地(但可以保存到云端或复制到本地)

强烈建议:先用在线环境学完前三篇,确认自己有兴趣,再安装本地环境。这样可以避免“装了又卸载”的挫败感。

2.2 三个推荐的在线环境(选一个就行)

选项A:Python官方Shell(最简单,推荐首选)

网址:https://www.python.org/shell/

打开后,你会看到一个页面,中间有一个白色的输入区域,前面有 >>> 符号。这个 >>> 叫做提示符——它表示“Python正在等你输入指令”。

实操步骤:

1. 在浏览器地址栏输入上面的网址,按回车
2. 等待页面加载完成(通常1-2秒)
3. 你会看到类似这样的界面:

```
Python 3.12.0 (main, ...) on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
```

4. 光标在 >>> 后面一闪一闪,说明可以输入了
5. 用键盘输入:print("Hello")(注意括号是英文的)
6. 按回车

你会看到:

```
Hello
>>>
```

恭喜!你刚刚运行了第一个程序。

详细解释每一部分:

· print:这是一个“函数”或“命令”,意思是“打印输出”
· ( 和 ):括号用来包裹“要打印的内容”
· " 双引号:表示里面的内容是“文本”,而不是代码
· Hello:实际要打印的文本
· 按回车:告诉Python“执行这一行”

如果一切顺利,Python会执行这条指令,把 Hello 显示在下一行,然后重新显示 >>> 等待下一条指令。

试试这个变体:

```python
print("你好,世界")
```

注意引号里面可以用中文。Python 3天然支持Unicode(全世界的文字),所以你可以打印中文、日文、阿拉伯文,都没问题。

选项B:Replit(功能更丰富)

网址:https://replit.com/

Replit是一个更强大的在线编程环境,支持保存代码、安装第三方库、协作编辑。界面稍微复杂一点,但也不难。

快速开始(不要被界面吓到):

1. 打开网站,点击右上角的 Sign up 注册(可以用GitHub或Google账号登录,也可以跳过注册直接使用)
2. 注册后,点击 Create Repl 按钮
3. 在弹出来的窗口里:Language 选择 Python,Title 随便写,比如 my_first_code
4. 点击 Create Repl
5. 你会看到一个分成左右两部分的界面:
· 左边白色区域:写代码的地方(可以写多行)
· 右边黑色区域:运行结果显示的地方
6. 在左边输入:print("Hello from Replit")
7. 点击顶部的绿色 Run 按钮
8. 右边会显示结果

Replit的优势在于:你可以写多行代码,保存在云端,下次打开还在。Python官方Shell一次只能写一行。

选项C:Google Colab(适合进阶,现在了解即可)

网址:https://colab.research.google.com/

Colab是Google出品的在线笔记本环境,支持Python和GPU加速。现在你不需要用它,但知道有这么个东西就好——将来做数据分析、机器学习时会很有用。

2.3 在线环境的第一个练习序列

现在你已经在 >>> 提示符下了。让我们循序渐进地做一些练习。不要只是读,请你亲自输入并运行每一行。

练习1:打印你的名字

```python
print("张三")
```

(把“张三”换成你自己的名字)

练习2:打印数字

```python
print(42)
```

注意:数字不需要加引号,文本才需要。

练习3:打印一个简单的算式

```python
print(1 + 1)
```

你会看到 2。Python帮你把计算做完了。

练习4:打印多行内容

```python
print("第一行")
print("第二行")
print("第三行")
```

每写一行按一次回车,你会看到三行输出。

练习5:在一行里打印多个内容

```python
print("今天是", "星期几", 5)
```

注意这里用了逗号分隔,Python会自动在输出时加上空格。

2.4 如果有人告诉你“在线环境不够正式”

你可能会听到有人说:“正经学编程要用本地环境,在线环境太玩具了。”

我的看法是:在最初的1-2周,在线环境完全足够,甚至更好。

为什么?

· 减少了“安装失败”导致的劝退
· 让你专注于代码本身,而不是环境配置
· 可以随时随地写代码(手机也可以)

等到你需要:

· 读取本地文件
· 安装第三方库(比如做数据爬虫的requests、做数据可视化的matplotlib)
· 编写多文件的复杂项目

那时候再切换到本地环境,你会更清楚自己在做什么。

所以:放心用在线环境学完前面几章,完全没有问题。

---

第三章:本地环境——在你自己电脑上安装Python

当你确认自己真的想学下去,或者在线环境已经不能满足你的需求时,就可以安装本地环境了。

本地环境的含义:Python程序直接运行在你的电脑上,不需要通过浏览器。可以读取你硬盘上的文件、可以使用全部功能、可以离线运行。

3.1 安装前的心理准备:这只是一次普通的软件安装

很多人害怕安装开发环境,因为听说过“配置环境变量”“编译失败”“依赖冲突”之类的可怕词汇。

但实际上,安装Python比安装Photoshop、微信、QQ都简单。你只需要:

1. 下载一个安装包
2. 双击运行
3. 勾选一个选项
4. 点击“下一步”几次

就这么简单。不要被那些术语吓退。

3.2 Windows系统详细安装指南(约3000字,每一步都有截图说明)

由于文本媒介无法展示真实截图,我会用文字尽可能详细地描述每一步你应该看到什么。

第一步:下载Python安装包

1. 打开浏览器,在地址栏输入 python.org 按回车
2. 你会看到Python官网,白色的背景,顶部是导航栏,中间有 Download 字样
3. 不要点其他地方,鼠标移动到顶部的 Downloads 菜单上(不要点击,只是悬停)
4. 在下拉菜单中,你会看到 Download for Windows 按钮,旁边显示一个版本号,比如 Python 3.12.4
5. 点击这个按钮

为什么会出现这个版本?因为Python一直在更新。3.x.x 都是可以的,不要纠结于具体的小版本号。

6. 浏览器开始下载一个 .exe 文件,文件名类似 python-3.12.4-amd64.exe
7. 下载完成后,在浏览器的下载栏或你的“下载”文件夹中找到这个文件

常见问题:32位还是64位?

如果你的电脑是近10年内买的,99%是64位系统。如何确认?

· 右键点击“此电脑”或“我的电脑”
· 选择“属性”
· 在“系统类型”一栏可以看到“64位操作系统”或“32位操作系统”
· 如果显示32位,需要去Python官网的Downloads页面,找到 Windows x86 executable installer 下载

第二步:运行安装程序——最关键的一步

1. 双击下载好的 .exe 文件
2. 系统可能会弹出一个窗口询问“是否允许此应用对你的设备进行更改?”——点击“是”
3. 现在你看到了Python安装界面。这个界面上有很多信息,但你需要关注的是最底部:

```
[ ] Install launcher for all users (recommended)
[ ] Add Python to PATH
```

4. 请务必勾选 Add Python to PATH —— 这是整个安装过程中最重要的一步,没有之一。大多数人说“Python安装后找不到命令”,都是因为忘了勾这个。
5. 确认 Add Python to PATH 前面有一个对勾 ✓
6. 然后点击 Install Now(如果不想改变默认安装位置,这是最简单的选择)

如果你有特殊需求(比如C盘空间不够),可以点击 Customize installation 自定义安装位置。但对于新手,建议保持默认。

7. 安装过程会显示一个进度条,并复制文件。这个过程大约30秒到2分钟。
8. 安装完成后,你会看到一个界面:

```
Setup was successful

[ ] Disable path length limit
```

这个额外的选项是什么意思?Windows系统有一个历史遗留问题:文件路径长度不能超过260个字符(所谓“MAX_PATH”限制)。点击这个选项可以解除限制。建议点击它,然后关闭安装程序。

第三步:验证安装是否成功

1. 按下键盘上的 Win 键(通常在左下角,Ctrl和Alt之间,有一个Windows图标)
2. 在搜索框中输入 cmd(三个字母)
3. 在搜索结果中会出现“命令提示符”或 Command Prompt,点击它
4. 你会看到一个黑色的窗口,里面可能有类似这样的文字:

```
Microsoft Windows [版本 10.0.19045.xxxx]
(c) Microsoft Corporation。保留所有权利。

C:\Users\你的用户名>
```

这个黑色窗口叫做命令行、终端或命令提示符。不要害怕它——它只是一个通过打字来操作电脑的方式,没有图形界面而已。

5. 在 > 后面输入以下命令(注意空格和符号):

```
python --version
```

6. 按回车

预期结果:

```
Python 3.12.4
```

(版本号可能不同)

如果你看到类似 Python 3.12.4 的输出,恭喜你——安装成功了!

如果显示的不是这个,而是报错,怎么办?

可能的情况和解决方案:

· 'python' 不是内部或外部命令 → 说明你忘了勾选 Add Python to PATH。有两个办法:
· 办法A(推荐):卸载重装。去“设置”->“应用”->找到Python,卸载。然后重新按照上面的步骤安装,这次记得勾选 Add Python to PATH。
· 办法B(手动添加):搜索“环境变量”,找到“系统环境变量”,在Path中添加Python的安装路径(通常是 C:\Users\你的用户名\AppData\Local\Programs\Python\Python312\ 和 C:\Users\你的用户名\AppData\Local\Programs\Python\Python312\Scripts\)。这对新手来说比较麻烦,建议用办法A。
· 显示 Python 2.7.x → 你的电脑可能预装了Python 2(老版本)。这时候需要输入 python3 --version 或 py --version 试试看。

第四步:进入Python交互式环境

验证安装成功后,继续在同一个黑色窗口里操作:

1. 输入 python 然后按回车(如果你安装了多个版本,可能需要输入 python3 或 py)
2. 你会看到类似这样的界面:

```
Python 3.12.4 (tags/v3.12.4:8e8a4ba, Jun 6 2024, 10:45:42) [MSC v.1940 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
```

出现了 >>> 提示符!这和在线环境一模一样了。

3. 输入 print("我的Windows成功运行Python了") 按回车
4. 看到输出,一切正常。

第五步:了解如何退出Python

当你想要退出 >>> 模式,回到普通的命令行提示符 > 时,有三种方法:

· 方法1:输入 exit() 然后按回车
· 方法2:按 Ctrl + Z(按住Ctrl键不放,再按Z),然后按回车
· 方法3:直接关闭黑色窗口

3.3 Mac系统详细安装指南

Mac系统有一个优势:它本身基于Unix,对开发者比较友好。但也有一点小麻烦:系统可能自带了Python 2(已经废弃的旧版本),我们需要的是Python 3。

方法A:使用终端安装(最简单)

1. 打开“启动台”(Launchpad) -> “其他” -> “终端”(Terminal)
2. 你会看到一个白色(或黑色)的窗口,里面有类似这样的文字:

```
Last login: ...
用户名@电脑名 ~ %
```

3. 输入以下命令:

```
python3 --version
```

4. 按回车

如果显示类似 Python 3.9.x 或更高版本 → 恭喜,你的Mac已经自带Python 3了,直接跳到“验证安装”步骤。

如果显示 command not found: python3 → 需要安装。继续往下看。

安装Homebrew(Mac上的“应用商店”)

1. 在终端中输入以下命令(可以复制粘贴,注意是一整行):

```
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```

2. 按回车,系统会要求你输入密码(你的Mac登录密码),输入时屏幕不会显示任何字符,这是正常的,输完按回车
3. 等待安装完成(可能需要几分钟)
4. 安装完成后,输入:

```
brew install python
```

5. 等待安装完成
6. 验证:python3 --version

方法B:从官网下载安装包(更直观)

1. 打开浏览器,访问 python.org
2. 点击 Downloads -> 选择 macOS
3. 下载 .pkg 安装包
4. 双击运行,按照安装向导的提示操作(一路“继续”即可)
5. 安装完成后,打开终端,输入 python3 --version 验证

进入Python交互式环境

在终端中输入 python3,看到 >>> 提示符。输入 print("Hello from Mac") 测试。

退出方法:

· exit() 回车
· 或者 Ctrl + D

3.4 Linux系统(如果你用Linux)

绝大多数Linux发行版都预装了Python。打开终端,输入 python3 即可。

如果没装,用包管理器安装:

· Ubuntu/Debian: sudo apt install python3
· Fedora: sudo dnf install python3
· Arch: sudo pacman -S python

---

第四章:从“一行指令”到“一个程序文件”

前面我们一直在 >>> 提示符下写代码,每写一行按一次回车,Python立刻执行。这叫交互式模式。

交互式模式适合:

· 学习语法
· 做简单实验
· 测试单条指令

但真正写程序时,我们需要把多行代码保存成一个文件,然后让Python一次性运行全部。这叫脚本模式。

4.1 创建你的第一个Python文件

Windows系统

1. 在桌面或任何文件夹里,右键点击空白处 -> “新建” -> “文本文档”
2. 将新建的文件重命名为 first.py (注意后缀从 .txt 改成 .py)
· 如果系统提示“改变文件扩展名可能导致文件不可用”,点击“是”
· 如果你看不到文件扩展名(只显示“新建文本文档”,没有“.txt”),需要在文件资源管理器的“查看”菜单中勾选“文件扩展名”
3. 右键点击 first.py -> “打开方式” -> “记事本”(或任何文本编辑器,比如VS Code、Sublime、Notepad++)
4. 在编辑器中输入:

```python
print("这是我的第一个Python程序文件")
print(1 + 2 + 3)
print("程序执行完毕")
```

5. 保存文件(Ctrl+S)

Mac系统

1. 打开“文本编辑”应用
2. 新建一个空白文档
3. 将格式设置为“纯文本”:菜单栏“格式” -> “制作纯文本”(或按 Shift + Command + T)
4. 输入上面的三行代码
5. 保存文件,命名为 first.py,位置可以选择桌面

4.2 运行这个文件

Windows系统

1. 打开命令提示符(cmd)
2. 切换到文件所在的目录。比如你把 first.py 保存在桌面:
```
cd Desktop
```
(如果文件在别的地方,比如 D:\my_code,则需要先输入 D: 回车,然后 cd my_code)
3. 运行文件:
```
python first.py
```
或者
```
py first.py
```
4. 你会看到三行输出

Mac系统

1. 打开终端
2. 切换到文件所在目录。如果文件在桌面:
```
cd Desktop
```
3. 运行:
```
python3 first.py
```
4. 看到输出

4.3 交互式 vs 脚本式:对比理解

特性 交互式模式 (>>>) 脚本模式 (.py文件)
写代码方式 一行一行 多行一次性
执行方式 每回车一次执行一行 整体执行
适合场景 学习、测试、探索 写完整程序
是否保存代码 不保存 保存后可以重复运行
能否方便修改 不能(只能重新输入) 可以随时编辑

比喻理解:交互式模式像是“打电话”——你说一句,对方回一句;脚本模式像是“写信”——你把所有话写在一封信里,一次性寄出。

4.4 一个重要的概念:代码是“从上到下”执行的

Python执行程序文件时,会从第一行开始,逐行向下执行,直到最后一行。

让我们用一个小实验验证这一点。

创建一个新文件 order.py,输入:

```python
print("第一行执行")
print("第二行执行")
print("第三行执行")
print("第四行执行")
```

运行它,你会看到输出顺序就是代码顺序。

这看起来很简单,但这是程序世界的核心规则之一:顺序执行。未来你会学到“分支”(条件判断)和“循环”(重复执行),但顺序执行永远是最基础的骨架。

---

第五章:第一次遇到错误——学会和报错做朋友

编程中不可避免的一件事就是报错。即使是写了20年代码的资深工程师,每天也都会遇到报错。

不同之处在于:

· 新手看到报错:害怕、沮丧、觉得自己不行
· 老手看到报错:冷静、阅读错误信息、定位问题、修复

这一章,我们来“安全地”体验各种报错。你不但不会搞坏任何东西,反而会学到最重要的技能:读错误信息。

5.1 SyntaxError:语法错误(你说的话Python听不懂)

语法错误是最常见的错误类型。意思是:你写的代码不符合Python的语法规则,就像你说了一句“我吃饭了去”而不是“我去吃饭了”——词都对,但顺序不对。

实验1:缺少右括号

在 >>> 下输入:

```python
print("你好
```

按回车,你会看到:

```
File "<stdin>", line 1
print("你好
^
SyntaxError: unexpected end of file
```

错误信息解读:

· File "<stdin>":发生错误的文件(<stdin>表示交互式模式)
· line 1:第一行
· ^ 符号:指向大概出错的位置
· SyntaxError: unexpected end of file:错误类型和描述,意思是“文件意外结束”——Python本来期待一个右括号,但文件(或者说这行代码)到这里就结束了,没找到右括号。

修复方法:加上缺失的右括号 )

实验2:使用了中文括号

```python
print("你好")
```

注意这里的小括号是中文全角符号 ( ),而不是英文半角 ( )。

报错:

```
SyntaxError: invalid character '(' (U+FF08)
```

Python说:发现了非法字符。它不认识中文括号。

修复方法:切换回英文输入法,重新输入括号。

实验3:引号不匹配

```python
print("你好)
```

这里左引号是双引号 ",右引号是单引号 '。

报错:

```
SyntaxError: unterminated string literal
```

意思是:字符串字面量没有结束。Python读到第一个双引号后,以为字符串开始了,然后一直往后找双引号结束,结果先遇到了其他内容。

修复方法:保持一致,都用双引号或都用单引号。

5.2 NameError:名称错误(用了没定义的东西)

实验4:忘记给字符串加引号

```python
print(hello)
```

报错:

```
NameError: name 'hello' is not defined
```

意思是:hello 这个名字没有被定义。Python以为 hello 是一个变量(我们还没学),而不是文本。

修复方法:加上引号:print("hello")

实验5:拼写错误

```python
prnt("你好")
```

报错:

```
NameError: name 'prnt' is not defined
```

print 拼成了 prnt。Python找不到叫 prnt 的命令。

5.3 TypeError:类型错误(对某种类型做了不允许的操作)

实验6:试图让文字和数字相加

```python
print("2" + 2)
```

报错:

```
TypeError: can only concatenate str (not "int") to str
```

意思是:只能把字符串(str)和字符串连接,不能把整数(int)和字符串连接。

"2" 是文本(字符串),2 是数字(整数)。它们不是同一种类型,不能直接相加。

修复方法:要么把数字转成字符串 print("2" + str(2)),要么把字符串转成数字 print(int("2") + 2)。后面会学。

5.4 学会“调试”的基本思路

当你看到报错时,按以下步骤做:

1. 不要慌。报错是正常的,不是你的电脑坏了。
2. 读最后一行。大多数情况下,最后一行直接告诉你错误类型和简要描述。
3. 看箭头指向。Python通常会用 ^ 标记出错位置。
4. 从第一行代码开始检查。有时候错误实际发生的位置早于报错位置(比如前一行的括号没有关闭)。
5. 尝试简化。如果一大段代码报错,先把其他行注释掉(在前面加 #),只保留最小可能出错的代码。
6. 搜索错误信息。把完整的错误信息复制到搜索引擎(如百度、Google),十有八九有人遇到过同样的问题。

一个心态建议:把报错想象成Python在“诚实地说出自己的困惑”。它不是在对你说“你真笨”,而是在说“我没能理解你刚才给的指令,具体来说,这里有问题”。你和Python是协作关系,不是对抗关系。

---

第六章:深入理解 print——你的第一把工具

到目前为止,我们反复使用了 print 这个命令。它是Python中最基础、最常用的输出工具。这一章我们把它彻底搞懂。

6.1 print 是什么?

print 是一个内置函数。

· “内置”意味着不需要额外安装,Python自带
· “函数”意味着它是一个“可以执行特定任务的工具”

使用方式:在 print 后面跟一对圆括号,括号里面放你要输出的内容。

```python
print(要输出的内容)
```

6.2 输出不同类型的内容

字符串(文本):需要引号

```python
print("Hello")
print('Hello') # 单引号也可以
print("她说:'你好'") # 双引号里面可以包含单引号
print('她说:"你好"') # 单引号里面可以包含双引号
```

数字:不需要引号

```python
print(42)
print(3.14159)
print(-273)
```

运算结果:Python会先计算,再输出

```python
print(100 + 200) # 输出 300
print(10 * 5) # 输出 50
print(2 ** 10) # 输出 1024(2的10次方)
print((3 + 5) * 2) # 输出 16
```

6.3 一次输出多个内容

用逗号分隔:

```python
print("今天是", 2024, "年", 12, "月")
```

输出:今天是 2024 年 12 月

注意:每个逗号会自动转换成一个空格。

6.4 控制分隔符(sep参数)

如果你不想用空格分隔,可以通过 sep 参数指定:

```python
print("苹果", "香蕉", "橘子", sep=", ")
```

输出:苹果, 香蕉, 橘子

```python
print("2024", "12", "25", sep="-")
```

输出:2024-12-25

6.5 控制结尾(end参数)

默认情况下,每次 print 结束后会换行。你可以改变这个行为:

```python
print("Hello", end=" ")
print("World")
```

输出:Hello World(在同一行)

```python
print("第一段", end="---")
print("第二段")
```

输出:第一段---第二段

```python
# 让print什么都不输出,只作为换行
print()
```

6.6 转义字符

在字符串中,有些字符有特殊含义,需要用反斜杠 \ 来“转义”:

· \n:换行
· \t:制表符(相当于按Tab键)
· \\:输出一个反斜杠
· \":输出一个双引号
· \':输出一个单引号

示例:

```python
print("第一行\n第二行\n第三行")
```

输出:

```
第一行
第二行
第三行
```

```python
print("姓名\t年龄\t城市")
print("张三\t25\t北京")
print("李四\t30\t上海")
```

输出(对齐的表格效果):

```
姓名 年龄 城市
张三 25 北京
李四 30 上海
```

```python
print("他说:\"Python很有趣\"")
```

输出:他说:"Python很有趣"

6.7 多行字符串(三个引号)

如果要输出一大段多行文本,用三个双引号或三个单引号:

```python
print("""
这是一段
可以跨越多行
的文本
""")
```

注意:开头和结尾的三引号必须单独成行,否则会多出空格。

6.8 f-string:在字符串中嵌入变量(提前预览)

虽然变量我们下一篇才正式学,但这里可以先看一眼,感受一下Python的优雅:

```python
name = "小明"
age = 18
print(f"我叫{name},今年{age}岁")
```

输出:我叫小明,今年18岁

f 放在字符串前面,{} 里面放变量名。这是Python 3.6引入的特性,非常常用。

---

第七章:代码注释——写给自己的笔记

7.1 什么是注释?

注释是写给人看的,Python执行时会完全忽略注释。

注释的作用:

· 解释某段代码是干什么的
· 临时禁用某行代码(调试时常用)
· 写下注意事项或待办事项

7.2 单行注释:#

```python
# 这是注释,不会被执行
print("Hello") # 这行代码输出Hello
# print("这一行被注释了,不会运行")
```

# 后面的所有内容都会被忽略。

最佳实践:

· 注释应该解释“为什么”,而不是“是什么”
· 不要写废话(比如 i = i + 1 # 把i加1 就是废话)
· 好的代码应该是自解释的(通过变量名、函数名表达意图),注释作为补充

7.3 多行注释:三个引号(严格来说是多行字符串)

Python没有专门的多行注释语法,但可以用未赋值给任何变量的多行字符串来达到类似效果:

```python
"""
这是一个多行注释
可以写多行内容
Python会忽略它,因为没有被使用
"""
print("代码继续")
```

但这本质上是一个字符串字面量,只是没有被使用,所以Python解析后丢弃。严格意义上不是注释,但效果类似。

真正的多行注释,可以每一行都加 #:

```python
# 第一行注释
# 第二行注释
# 第三行注释
```

大多数代码编辑器都有快捷键(比如 Ctrl + / 或 Cmd + /)可以批量添加/取消注释。

7.4 注释的最佳实践示例

```python
# 计算圆的面积
# 公式:π × r²
# 注意:这里使用3.14159作为π的近似值

radius = 5
# 如果半径是负数,面积没有意义
# 但本例中我们假设输入合法

area = 3.14159 * radius * radius
print(area)

# TODO: 后续改用math.pi获得更精确的值
```

---

第八章:常见问题终极排查(FAQ)

这一章收集了新手最常遇到的问题。如果你遇到了问题,不要急着放弃——先在这里找找有没有解决方案。

Q1:我输入 python --version 后显示“不是内部或外部命令”

原因:安装时没有勾选 Add Python to PATH。

解决方案:

1. 卸载Python(控制面板 -> 程序和功能 -> 找到Python -> 卸载)
2. 重新安装,这次一定勾选 Add Python to PATH
3. 安装完成后,重新打开一个新的命令提示符窗口(之前打开的不会自动更新环境变量)

Q2:我输入 python 后进入了Windows应用商店

原因:Windows 10/11 有一个“Python应用商店别名”的坑爹设置。当你在命令行输入 python 时,系统先去找应用商店里的Python版本(而不是你刚安装的)。

解决方案:

· 方法A:输入 py 而不是 python(py 是Python自带的启动器,不受别名影响)
· 方法B:在开始菜单搜索“管理应用执行别名”,找到“Python”的两个条目,都关掉
· 方法C:使用绝对路径:C:\Users\你的用户名\AppData\Local\Programs\Python\Python312\python.exe

Q3:我能看到 >>> 提示符,但是输入中文显示乱码

原因:Windows的旧版本命令提示符默认使用GBK编码,而Python使用UTF-8。

解决方案:

· 在命令提示符中,先输入 chcp 65001 然后回车(切换到UTF-8编码),再输入 python
· 或者使用Windows Terminal(微软官方新终端,支持UTF-8)
· 或者使用在线环境,省去中文编码烦恼

Q4:Mac上输入 python 显示 python2.7

原因:Mac旧版本系统预装了Python 2.7,而你需要Python 3。

解决方案:始终使用 python3 命令而不是 python。如果需要让 python 默认指向 python3,可以在 ~/.zshrc 或 ~/.bash_profile 中添加 alias python=python3。

Q5:我在文本编辑器里写了代码,保存了,但在命令行运行 python first.py 说找不到文件

原因:当前命令行所在的目录和文件所在的目录不一致。

解决方案:

1. 在命令行中输入 dir(Windows)或 ls(Mac/Linux),查看当前目录下的文件列表
2. 如果没看到 first.py,说明你在错误的目录
3. 使用 cd 命令切换到文件所在目录
· Windows: cd C:\Users\你的用户名\Desktop
· Mac/Linux: cd /Users/你的用户名/Desktop
4. 或者使用完整路径运行:python C:\Users\你的用户名\Desktop\first.py

Q6:代码完全正确,但运行时什么都没发生

可能原因:

· 你写的是 print 但忘记保存文件了
· 你保存的文件名是 first.py.txt 而不是 first.py(Windows默认隐藏扩展名导致)
· 你正在交互式模式下,但误以为在运行脚本文件

解决方案:

· 确保文件扩展名正确
· 保存文件后重新运行
· 如果是交互式模式,直接用 print("test") 测试

Q7:遇到一个红色错误,完全看不懂

解决方案:

1. 不要着急,深呼吸
2. 把完整的错误信息(包括文件名和行号)复制下来
3. 去百度或Google搜索(推荐用英文搜索,结果更多)
4. 试着理解错误的第一行和最后一行
5. 如果实在解决不了,去论坛提问(Stack Overflow、V2EX、知乎、编程学习群),提问时附上:
· 你做了什么(代码)
· 你期望的结果是什么
· 实际的结果是什么(完整错误信息)
· 你的操作系统和Python版本

一个好的问题示例:

标题:Windows 11, Python 3.12,运行print("Hello")报错SyntaxError

正文:
我刚安装了Python,在命令行输入python进入交互模式,然后输入print("Hello"),按回车。
实际输出:SyntaxError: invalid syntax,并且光标指向print后面。

我检查过括号是英文的,也试过重启。请问可能是什么原因?

一个差的问题示例:

Python报错了怎么办?

(别人无从下手帮你)

---

第九章:巩固练习(做完就算真正掌握了)

以下练习按难度递增排列。建议全部亲手做一遍,不要只看不做。

练习1:自我介绍

用 print 输出以下内容(共4行):

```
姓名:你的名字
年龄:你的年龄
爱好:你的爱好
学习Python的第1天
```

练习2:计算器

在Python交互式环境中,计算以下表达式并观察结果:

```
123 + 456
1000 - 888
15 * 20
144 / 12
2 ** 8
(10 + 20) * (30 - 15)
```

练习3:格式化输出

使用 sep 和 end 参数,输出:

```
苹果-香蕉-橘子
```

(提示:用 sep="-")

再输出:

```
1,2,3,4,5
```

(没有空格,只有逗号)

练习4:转义字符实验

输出以下内容(严格按格式,注意空格):

```
第一行
第二行(前面缩进8个空格)
第三行---第四行(中间三个短横线)
```

练习5:故意制造错误(推荐!)

有目的地制造以下错误,观察错误信息,尝试理解:

1. 忘记写括号:print "hello"
2. 括号不匹配:print("hello"
3. 引号不匹配:print("hello')
4. 拼写错误:pritn("hello")
5. 忘了引号:print(hello)

读完错误信息后,问自己:

· 这个错误叫什么名字?
· Python大致认为哪里出了问题?
· 我该怎么修复?

练习6:多文件实验

1. 创建两个文件 a.py 和 b.py
2. 在 a.py 中写一行:print("这是a文件")
3. 在 b.py 中写一行:print("这是b文件")
4. 分别运行两个文件,观察
5. 思考:运行 a.py 会不会影响 b.py?两个文件之间是什么关系?

练习7:注释练习

拿练习1的代码,给每一行加上注释:

```python
# 输出姓名
print("姓名:张三")
# 输出年龄
print("年龄:25")
# 输出爱好
print("爱好:读书")
# 输出学习天数
print("学习Python的第1天")
```

然后运行,确认注释不影响输出。

练习8:综合挑战

尝试用单个 print 输出以下菱形图案(提示:使用 \n 或三引号):

```
*
***
*****
*******
*****
***
*
```

第十章:总结与下一站

你在这42,000字中真正学到的东西

1. Python环境搭建
· 在线环境(Python官方Shell、Replit)
· Windows本地安装(特别关注 PATH)
· Mac本地安装(python3 vs python)
2. 两种运行模式
· 交互式模式(>>> 提示符)
· 脚本模式(.py 文件)
3. 第一个工具:print
· 输出字符串、数字、运算结果
· 多个输出用逗号分隔
· sep 和 end 参数
· 转义字符:\n、\t 等
· 多行字符串
4. 与错误共处
· SyntaxError(语法错误)
· NameError(名称错误)
· TypeError(类型错误)
· 读错误信息的方法
5. 代码注释
· 单行注释 #
· 多行注释的方式
6. 解决问题的流程
· 冷静 → 阅读错误 → 定位 → 搜索 → 提问

一个重要的里程碑

恭喜你。你现在已经可以:

· 在任何一台电脑上运行Python代码
· 理解最基本的输出命令
· 读懂常见的错误信息
· 自己搜索和解决问题

这听起来可能不多,但这是所有Python程序员的共同起点。无论将来你是做数据分析、网站开发、人工智能还是自动化脚本,第一课都是这些。

下一篇预告:变量——让程序记住东西

在下一篇中,你会学到:

· 什么是变量(把数据放进“盒子”里)
· 变量的命名规则(哪些名字可以用,哪些不行)
· 基本数据类型(整数、浮点数、字符串、布尔值)
· 变量的运算和赋值
· 用变量让你的程序“活”起来,而不是只会输出固定内容

到时候,你会写出这样的代码:

```python
name = "小明"
age = 18
print(f"{name}明年就{age + 1}岁了")
```

这些是编程的核心基础。掌握了变量,你就真正开始“编程”了——因为程序本质上就是“数据 + 数据处理规则”。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-03 08:13:20 HTTP/2.0 GET : https://f.mffb.com.cn/a/497514.html
  2. 运行时间 : 0.096428s [ 吞吐率:10.37req/s ] 内存消耗:5,359.13kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=eb01809d23ae7be007c2e0034876be07
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000652s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000791s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000663s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000293s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000491s ]
  6. SELECT * FROM `set` [ RunTime:0.000200s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000579s ]
  8. SELECT * FROM `article` WHERE `id` = 497514 LIMIT 1 [ RunTime:0.000774s ]
  9. UPDATE `article` SET `lasttime` = 1783037600 WHERE `id` = 497514 [ RunTime:0.008011s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000305s ]
  11. SELECT * FROM `article` WHERE `id` < 497514 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000549s ]
  12. SELECT * FROM `article` WHERE `id` > 497514 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000446s ]
  13. SELECT * FROM `article` WHERE `id` < 497514 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001251s ]
  14. SELECT * FROM `article` WHERE `id` < 497514 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.009055s ]
  15. SELECT * FROM `article` WHERE `id` < 497514 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001202s ]
0.098078s