2  走进Python

2.1 JupyterHub 和 Jupyter Notebook 简介

2.1.1 JupyterHub 简介

JupyterHub 是一个多用户服务器,为多个用户提供 Jupyter Notebook 环境。它适用于团队、教室、实验室或更大规模的基础设施,使每个用户都能拥有自己的 Jupyter 环境,而无需自行安装。

JupyterHub 的主要特点

  • 统一管理多用户的 Jupyter 环境
  • 集中化的身份验证系统(支持OAuth、LDAP等协议)
  • 资源分配与管理(CPU、内存、存储配额)
  • 为学生提供标准化的学习环境
  • 支持容器化部署(如Docker、Kubernetes)

作为学生,你只需要:

  1. 使用提供的链接访问 JupyterHub
  2. 用你的账号登录
  3. 开始使用预先配置好的 Jupyter 环境

2.1.2 Jupyter Notebook 简介

Jupyter Notebook 是一个交互式的笔记本工具,能够将代码、文本、图表和可视化内容结合在一起。它基于IPython(Interactive Python)开发,支持40多种编程语言的内核(kernel)。

Jupyter Notebook 的核心功能

  1. 交互式计算:代码可以分块执行,每个代码块(单元格)可以独立运行

    # 在代码单元格中输入
    result = 0
    for i in range(1, 11):  # 计算1到10的和
        result += i
    print(f"1到10的和是:{result}")
    1到10的和是:55
  2. 混合内容:可以在同一文档中混合代码、文本说明、公式和图表

    • 代码单元格:包含可执行的代码
    • Markdown 单元格:包含文本、公式和图片
  3. 即时反馈:代码运行结果立即显示在单元格下方

  4. 操作方法

    • 使用 Shift + Enter 运行当前单元格
    • 使用工具栏上的按钮创建新单元格
    • 单元格可以是代码(Code)或文本(Markdown)

Jupyter Notebook 特别适合学习编程、数据分析、可视化和创建包含代码的教学材料,因为它让代码执行过程变得更加直观和互动。

在你的学习环境中,你可以直接开始使用 Jupyter Notebook 来编写和执行 Python 代码,无需担心安装和配置问题,这会让你专注于学习编程而不是环境搭建。

2.2 Python 的缩进和注释

2.2.1 缩进:让代码整齐有序

Python的代码风格遵循PEP 8(Python Enhancement Proposal 8)规范。其中,缩进是最基本也是最重要的规则之一。我们用空格(严格要求4个)来表示代码的层次关系:

# 一个简单的成绩判断程序
score = 85
if score >= 90:
    print("优秀!")  # 注意这行是缩进的
    print("继续保持!")  # 这行也要缩进
else:
    print("还不错!")  # 这行也是缩进的
print("评价完毕")  # 这行不缩进,因为不属于if-else的内容
还不错!
评价完毕

💡 小贴士

  • 每当你看到冒号 : ,下一行就要缩进
  • 同一组的代码要缩进相同的距离
  • 不用担心缩进的距离,编辑器会自动帮你处理

2.2.2 注释:代码中的笔记

注释就像是给代码写的笔记,帮助别人(包括将来的自己)理解代码的意思:

# 这是单行注释,用 # 开头

"""
这是多行注释
可以写很多行解释
就像写笔记一样
"""

# 来看个实际的例子
def calculate_final_score(homework, exam):
    """
    计算学期最终成绩
    homework: 平时作业成绩(占40%)
    exam: 期末考试成绩(占60%)
    """
    final_score = homework * 0.4 + exam * 0.6
    return final_score

# 测试这个函数
homework_score = 85
exam_score = 92
final = calculate_final_score(homework_score, exam_score)
print(f"最终成绩是:{final}")
最终成绩是:89.19999999999999