鱼C论坛

 找回密码
 立即注册
楼主: 小甲鱼

《笨办法学Python》习题0:蓄势待发

  [复制链接]
发表于 2025-7-12 09:44:55 | 显示全部楼层
笨办法学Python(小甲鱼精译版)封面
《笨办法学Python》
(小甲鱼精译版 · 原书第五版)
[美] Zed A. Shaw 著  |  小甲鱼 译
立即购买
不管学不学先下载软件
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-27 17:43:28 | 显示全部楼层
打卡加油。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-28 11:49:40 | 显示全部楼层
Python [conda env:base] *
Python [conda env:base] *为什么我开启的第一项是这个,而不是python3[ipykernel]?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-29 19:42:49 | 显示全部楼层
@fishc  您好 在jupyter里我没有找到新建py文件
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-29 19:43:42 | 显示全部楼层
百里田best 发表于 2025-07-29 19:42
@fishc  您好 在jupyter里我没有找到新建py文件


在Jupyter中创建.py文件有以下几种方法:

方法1:通过文本文件创建(推荐)
1. 在Jupyter主界面点击右上角 NewText File
2. 在新打开的文本编辑器中输入Python代码
3. 点击顶部菜单 FileRename
4. 将文件名改为 xxx.py(注意后缀必须是.py)

方法2:使用魔法命令(在Notebook中创建)
在任意Notebook单元格中输入:

  1. %%writefile your_script.py
  2. # 这里写Python代码
  3. print("Hello FishC!")
复制代码

运行后会创建your_script.py文件

方法3:通过终端创建
1. 在Jupyter主界面点击 New → Terminal
2. 在终端输入:

  1. touch new_file.py  # Linux/Mac

  2. type nul > new_file.py  # Windows
复制代码


为什么找不到直接创建选项?
Jupyter默认只显示:
o Notebook (.ipynb)
o Text File (.txt)
o Folder 等
需要手动将文本文件重命名为.py后缀

验证是否成功:
创建后刷新页面,.py文件会显示Python图标,双击可编辑。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-30 17:53:28 | 显示全部楼层
@FishC 我的win10系统更新后Jupyter启动不了,一定要重装才能解决吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-30 17:54:11 | 显示全部楼层
百里田best 发表于 2025-07-30 17:53
@FishC 我的win10系统更新后Jupyter启动不了,一定要 ...


别担心,Windows 10更新后Jupyter启动失败很常见,通常不需要重装。试试这些步骤:

1. 修复Python环境变量
Win10更新常重置环境变量。按 Win+R 输入 sysdm.cpl → 高级 → 环境变量 → 检查以下路径是否存在:

  1. Path1: C:\Users\你的用户名\AppData\Roaming\Python\PythonXX\Scripts
  2. Path2: C:\Program Files\PythonXX\Scripts  (XX是你的Python版本)
复制代码


2. 强制更新关键组件
用管理员身份运行CMD/PowerShell:

  1. pip install --upgrade --force-reinstall jupyter-core nbconvert ipykernel
复制代码


3. 重置内核配置
删除损坏的运行时文件:

  1. jupyter kernelspec list  # 查看内核路径
  2. del /q/s "%APPDATA%\jupyter\runtime\*"  # 删除所有运行时文件
复制代码


4. 检查防火墙拦截
临时关闭防火墙测试:
控制面板 → Windows Defender防火墙 → 启用或关闭防火墙 → 全部关闭

5. 终极方案(无需重装整个Python)
仅重装Jupyter核心:

  1. pip uninstall -y jupyter notebook jupyterlab
  2. pip install notebook --no-cache-dir
复制代码


如果提示 'jupyter' 不是内部命令,直接用Python启动:

  1. python -m notebook
复制代码


注意: 90%的情况通过第2步强制更新组件就能解决。如果仍不行,请回复错误截图!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-1 19:00:15 | 显示全部楼层
@FishC
mac 需要设置环境变量吗?
该怎么设置呢?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-1 19:01:15 | 显示全部楼层
变强很难吗? 发表于 2025-08-01 19:00
@FishC
mac 需要设置环境变量吗?
该怎么设置呢?


在 Mac 上设置环境变量的方法如下(以常见的 zshbash 为例):

1. 确认当前 Shell 类型
打开终端,输入:
  1. echo $SHELL
复制代码

o 若显示 /bin/zsh → 编辑 ~/.zshrc
o 若显示 /bin/bash → 编辑 ~/.bash_profile

2. 修改配置文件(以 zsh 为例)
  1. nano ~/.zshrc
复制代码

在文件末尾添加(示例为添加 Python 路径):
  1. export PATH="/usr/local/bin:$PATH"
  2. export MY_VAR="HelloFishC"
复制代码

Ctrl+O 保存 → Enter 确认 → Ctrl+X 退出

3. 立即生效配置
  1. source ~/.zshrc  # 若用 bash 则替换为 source ~/.bash_profile
复制代码


4. 验证环境变量
  1. echo $PATH      # 查看路径变量
  2. echo $MY_VAR    # 查看自定义变量
复制代码


注意事项:
1. 所有路径用英文冒号 : 分隔
2. $PATH 表示原有路径,新路径加在前面优先生效
3. 重启终端后配置依然有效

常用环境变量文件:
o 用户级:~/.zshrc (zsh) / ~/.bash_profile (bash)
o 全局级:/etc/paths(需管理员权限)

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-6 14:00:39 | 显示全部楼层
@FishC 请问测试安装环节,启动 Jupyter Lab(输入 jupyter-lab 命令)并在浏览器中打开,提示未找到文件,它可能已被移动、编辑或删除。应该怎么解决?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-6 14:01:24 | 显示全部楼层
整整整 发表于 2025-08-06 14:00
@FishC 请问测试安装环节,启动 Jupyter Lab(输入 ju ...


遇到启动Jupyter Lab时提示“未找到文件”的问题,可以按以下步骤排查:

1. 确认安装是否正确
在终端输入以下命令检查Jupyter Lab是否安装成功:

  1. jupyter lab --version
复制代码

若提示命令不存在,需重新安装:

  1. pip install --upgrade jupyterlab
复制代码


2. 检查启动路径
o 确保在正确的项目目录下启动(cd 你的项目路径
o 避免在系统保护目录(如C:\Program Files)中启动

3. 清除配置文件
执行以下命令重置配置:

  1. jupyter lab clean  # 清除构建文件
  2. jupyter lab build  # 重建前端
复制代码


4. 检查端口冲突
尝试指定新端口启动:

  1. jupyter lab --port 8889
复制代码


5. 手动打开浏览器
复制终端输出的链接(类似:[url=http://localhost:8888/lab?token=xxx)到浏览器地址栏]http://localhost:8888/lab?token=xxx)到浏览器地址栏[/url]

6. 检查防火墙/权限
o 临时关闭防火墙测试
o 在终端以管理员身份运行命令(Windows:右键选择“以管理员身份运行”)

7. 完整卸载重装
若仍失败,彻底重装:

  1. pip uninstall -y jupyterlab
  2. pip cache purge
  3. pip install jupyterlab
复制代码


8. 查看详细日志
启动时添加调试参数:

  1. jupyter lab --debug
复制代码

观察终端输出的具体错误信息

注意:如果之前安装过旧版Jupyter,建议同时卸载冲突包:

  1. pip uninstall -y notebook ipython traitlets
复制代码

再重新安装Jupyter Lab。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-6 14:17:31 | 显示全部楼层
@FishC 我查找到jupyterlab在E:\py\Lib\site-packages,但是我新安装的在E:\Anaconda,在测试安装环节,启动 Jupyter Lab(输入 jupyter-lab 命令)并在浏览器中打开,提示未找到文件,它可能已被移动、编辑或删除。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-6 14:18:28 | 显示全部楼层
整整整 发表于 2025-08-06 14:17
@FishC 我查找到jupyterlab在E:\py\Lib\site-packages ...


您遇到的问题是由于系统环境变量中Jupyter命令指向旧路径导致的。以下是详细解决方案:

解决方法:
1. 打开命令提示符(Win+R → 输入"cmd")
2. 删除旧环境变量(临时方案):

  1. set PATH=E:\Anaconda;E:\Anaconda\Scripts;%PATH%
复制代码

3. 检查新安装路径是否生效:

  1. where jupyter-lab
复制代码

应显示 E:\Anaconda\Scripts\jupyter-lab.exe

永久解决方案:
1. 按 Win+S 搜索"环境变量" → 打开"编辑系统环境变量"
2. 在 系统变量 中找到 Path
3. 删除所有包含旧路径 E:\py\ 的条目
4. 添加两条新路径(点击"新建"):
   E:\Anaconda
   E:\Anaconda\Scripts
5. 将这些新条目移动到列表顶部(使用"上移"按钮)

验证安装:
1. 打开新的命令提示符(重要!)
2. 执行:

  1. jupyter-lab --version
复制代码

应显示版本号(如 4.1.5)
3. 启动服务:

  1. jupyter-lab
复制代码


如果仍报错,请尝试重装Jupyter:

  1. pip uninstall jupyterlab
  2. pip install jupyterlab
复制代码


注意:操作完成后必须重启命令提示符窗口才能使环境变量生效!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-6 14:29:00 | 显示全部楼层
FishC 发表于 2025-8-6 14:18
您遇到的问题是由于系统环境变量中Jupyter命令指向旧路径导致的。以下是详细解决方案:

解决方法:
...

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
notebook 7.2.2 requires jupyterlab<4.3,>=4.2.0, but you have jupyterlab 4.4.5 which is incompatible.
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-6 14:29:43 | 显示全部楼层
整整整 发表于 2025-08-06 14:29
FishC 发表于 2025-8-6 14:18
您遇到的问题是由于系 ...


您遇到的依赖冲突问题是由于包版本不兼容导致的。以下是解决方案:

推荐方案:升级 notebook 包
在命令行中执行:

  1. pip install --upgrade notebook
复制代码


如果升级后仍有问题,可尝试以下两种方案:

方案1:安装兼容版本(推荐)

  1. pip install jupyterlab==4.2.0 notebook==7.2.2
复制代码


方案2:创建独立虚拟环境(更彻底)
1. 创建新环境:

  1. conda create -n py_env python=3.12
复制代码


2. 激活环境:

  1. conda activate py_env
复制代码


3. 安装必要组件:

  1. conda install jupyterlab notebook
复制代码


重要提示:
1. 操作前请关闭所有Python相关进程
2. 如果使用VSCode等IDE,请重启IDE
3. 建议优先尝试方案1,若无效再使用方案2

执行后请通过以下命令验证:

  1. jupyter-lab --version
  2. notebook --version
复制代码


两个版本号应显示兼容(如jupyterlab=4.2.x和notebook=7.2.x)

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-13 09:47:26 | 显示全部楼层
@FishC 为什么我输入cd Desktop提示以下内容,不能进入桌面呢?
cd : Cannot find path 'C:\Windows\system32\Desktop' because it does not exist.
At line:1 char:1
+ cd Desktop
+ ~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Windows\system32\Desktop:String) [Set-Location], ItemNotFoundExcepti
   on
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-13 09:48:38 | 显示全部楼层
neoits 发表于 2025-08-13 09:47
@FishC 为什么我输入cd Desktop提示以下内容,不能进 ...


当输入 `cd Desktop` 无法进入桌面时,通常有以下几种原因及解决方法:

1. 当前路径错误:
   - 桌面文件夹(Desktop)通常位于用户目录下(如 C:\Users\你的用户名\Desktop)。
   - 如果当前不在用户目录,直接输入 cd Desktop 会失败。
   - 解决方法:
     先返回用户目录再进入:
   

  1.      cd %userprofile%
  2.      cd Desktop
  3.      
复制代码


2. 文件夹名称拼写错误或大小写问题(Linux/macOS):
   - 检查桌面文件夹的实际名称(可能是 Desktopdesktop 或其他)。
   - 解决方法:
     用 ls(Linux/macOS)或 dir(Windows)查看当前目录内容:
   

  1.      dir  # Windows
  2.      ls   # Linux/macOS
  3.      
复制代码


3. 系统语言导致路径不同(非英文系统):
   - 中文系统可能显示为 桌面 而非 Desktop
   - 解决方法:
     使用本地化名称:
   

  1.      cd 桌面  # 中文系统
  2.      
复制代码


4. 路径包含空格(需加引号):
   - 若路径含空格(如 My Desktop),需用引号包裹:
   

  1.      cd "My Desktop"
  2.      
复制代码


5. 桌面文件夹被移动或删除:
   - 检查桌面文件夹是否存在于用户目录下。

通用排查步骤:
1. 确认当前路径:
  

  1.    echo %cd%  # Windows
  2.    pwd        # Linux/macOS
  3.    
复制代码


2. 列出当前目录内容:
  

  1.    dir  # Windows
  2.    ls   # Linux/macOS
  3.    
复制代码


3. 直接跳转绝对路径(示例):
  

  1.    cd C:\Users\你的用户名\Desktop  # Windows
  2.    cd /home/你的用户名/Desktop    # Linux
  3.    cd /Users/你的用户名/Desktop   # macOS
  4.    
复制代码


注意: 将命令中的 你的用户名 替换为实际用户名。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-13 10:27:05 | 显示全部楼层
@FishC 为什么我在终端上输入jupyter-lab能够弹出网页,但是网页显示的是一下内容:
File not found
It may have been moved, edited, or deleted.
ERR_FILE_NOT_FOUND
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-13 10:28:24 | 显示全部楼层
neoits 发表于 2025-08-13 10:27
@FishC 为什么我在终端上输入jupyter-lab能够弹出网页 ...


遇到在终端运行 `jupyter-lab` 后浏览器显示 "File not found" 的问题,通常有以下几种原因和解决方案:

---

### 1. **浏览器缓存或旧链接问题**
   - **原因**:浏览器可能缓存了旧的重定向链接。
   - **解决**:
     - 关闭所有浏览器窗口,重新打开并访问 `http://localhost:8888/lab`(或终端显示的完整URL)。
     - 或使用隐私模式(无痕窗口)访问。

---

### 2. **Jupyter 未正确启动**
   - **原因**:启动过程被中断或配置错误。
   - **解决**:
     1. 在终端完全关闭所有 Jupyter 进程:
      

  1.         # 强制关闭所有 Jupyter 相关进程
  2.         kill $(pgrep jupyter)
  3.         
复制代码

     2. 重新启动 Jupyter Lab:
      

  1.         jupyter-lab
  2.         
复制代码


---

### 3. **URL 路径错误**
   - **原因**:浏览器访问了错误的 URL(如缺少 `/lab`)。
   - **解决**:
     - 检查终端输出的实际访问链接(通常为 `http://localhost:8888/lab?token=xxx`),复制完整的链接到浏览器。

---

### 4. **安装冲突或损坏**
   - **原因**:Jupyter Lab 核心文件损坏。
   - **解决**:重装 Jupyter Lab:
   

  1.      pip install --upgrade --force-reinstall jupyterlab
  2.      
复制代码


---

### 5. **端口被占用**
   - **原因**:默认端口 `8888` 被其他程序占用。
   - **解决**:换用其他端口启动:
   

  1.      jupyter-lab --port 8890  # 尝试 8890 或其他端口
  2.      
复制代码


---

### 6. **文件系统权限问题**
   - **原因**:Jupyter 无权访问启动目录的文件。
   - **解决**:
     - 在用户目录下启动:
      

  1.        cd ~  # 切换到用户主目录
  2.        jupyter-lab
  3.       
复制代码


---

### 快速诊断步骤:
1. 终端运行后,**复制完整 URL**(含 `token=` 的部分)到浏览器。
2. 检查终端是否有报错(如 `端口占用` 或 `权限拒绝`)。
3. 尝试用命令生成新配置文件:
  

  1.    jupyter-lab --generate-config
  2.    
复制代码


按以上步骤操作后,通常可解决问题。如果仍有报错,请提供终端的完整输出信息。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-8-13 10:53:18 | 显示全部楼层
@FishC 刚才的方法都试过了,还是不行,一下是终端输出信息。
[I 2025-08-13 10:52:03.142 ServerApp] jupyter_lsp | extension was successfully linked.
[I 2025-08-13 10:52:03.145 ServerApp] jupyter_server_terminals | extension was successfully linked.
[I 2025-08-13 10:52:03.156 ServerApp] jupyterlab | extension was successfully linked.
[I 2025-08-13 10:52:03.350 ServerApp] notebook_shim | extension was successfully linked.
[I 2025-08-13 10:52:03.373 ServerApp] notebook_shim | extension was successfully loaded.
[I 2025-08-13 10:52:03.374 ServerApp] jupyter_lsp | extension was successfully loaded.
[I 2025-08-13 10:52:03.375 ServerApp] jupyter_server_terminals | extension was successfully loaded.
[I 2025-08-13 10:52:03.377 LabApp] JupyterLab extension loaded from D:\Python313\Lib\site-packages\jupyterlab
[I 2025-08-13 10:52:03.377 LabApp] JupyterLab application directory is D:\Python313\share\jupyter\lab
[I 2025-08-13 10:52:03.377 LabApp] Extension Manager is 'pypi'.
[I 2025-08-13 10:52:03.565 ServerApp] jupyterlab | extension was successfully loaded.
[I 2025-08-13 10:52:03.565 ServerApp] The port 8888 is already in use, trying another port.
[I 2025-08-13 10:52:03.566 ServerApp] Serving notebooks from local directory: C:\Users\Leon
[I 2025-08-13 10:52:03.566 ServerApp] Jupyter Server 2.16.0 is running at:
[I 2025-08-13 10:52:03.566 ServerApp] http://localhost:8889/lab?token=f7f1a1cdad08a541d161f56e23a22ea96ce98881f17e707e
[I 2025-08-13 10:52:03.566 ServerApp]     http://127.0.0.1:8889/lab?token= ... ea96ce98881f17e707e
[I 2025-08-13 10:52:03.566 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 2025-08-13 10:52:03.582 ServerApp]

    To access the server, open this file in a browser:
        file:///C:/Users/Leon/AppData/Roaming/jupyter/runtime/jpserver-20312-open.html
    Or copy and paste one of these URLs:
        http://localhost:8889/lab?token=f7f1a1cdad08a541d161f56e23a22ea96ce98881f17e707e
        http://127.0.0.1:8889/lab?token= ... ea96ce98881f17e707e
[I 2025-08-13 10:52:03.627 ServerApp] Skipped non-installed server(s): bash-language-server, dockerfile-language-server-nodejs, javascript-typescript-langserver, jedi-language-server, julia-language-server, pyright, python-language-server, python-lsp-server, r-languageserver, sql-language-server, texlab, typescript-language-server, unified-language-server, vscode-css-languageserver-bin, vscode-html-languageserver-bin, vscode-json-languageserver-bin, yaml-language-server
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-8-21 06:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表