Python 基础课程

AI 时代的高效学习路径,聚焦数据分析核心技能

4 核心模块
16 课时
50+ 实战案例

课程目标

本课程旨在帮助商务数据分析专业学生在 AI 时代高效学习 Python 基础,聚焦与 AI 协作和数据分析直接相关的核心概念,以“能用、会改、懂查”为目标,跳过孤立、过时的语法细节。

适合人群

  • 商务数据分析专业学生
  • 希望掌握数据分析技能的职场人士
  • 零基础编程爱好者
  • 需要与 AI 协作的技术人员

学习路径

  • 第一阶段(1-2周):核心语法与 AI 初协作
  • 第二阶段(2-3周):面向对象与数据分析入门

课程模块

模块一:与 AI 沟通的"元语言"

已完成

单元介绍

本单元是 Python 学习的基础,也是与 AI 沟通的"元语言"。通过学习这些核心概念,你将能够理解 AI 生成的代码,并向 AI 清晰地描述你的需求。

1.1 基础语法与数据结构

1.1.1 变量与数据类型

变量是存储数据的容器,Python 支持多种数据类型:

代码示例
# 整数
age = 20

# 浮点数
height = 1.65

# 字符串
name = "丘雅雯"

# 布尔值
is_student = True

# 打印变量
print(name, "今年", age, "岁")
print("身高:", height, "米")
print("是否是学生:", is_student)
练习 2.1

练习1:定义一个类 Person,包含属性 name、age 和方法 introduce(),返回自我介绍的字符串。

练习2:定义一个类 Student 继承自 Person,添加属性 grade,并重写 introduce() 方法。

练习3:创建一个银行账户类,包含属性 balance 和方法 deposit()、withdraw(),实现基本的存取款功能。

练习 1.1.1

练习1:创建变量存储你的姓名、年龄、体重,并打印出来。

练习2:创建一个变量存储圆周率 π(取3.14159),然后计算半径为5的圆的面积并打印。

练习3:交换两个变量的值。给定 x=10, y=20,交换后 x 应该是20,y 应该是10。

1.1.2 运算符与表达式

Python 支持多种运算符:

代码示例
# 算术运算符
x = 10
y = 3
print("加法:", x + y)      # 13
print("减法:", x - y)      # 7
print("乘法:", x * y)      # 30
print("除法:", x / y)      # 3.333...
print("取整:", x // y)     # 3
print("取余:", x % y)      # 1
print("幂运算:", x ** y)    # 1000

# 比较运算符
print("x > y:", x > y)      # True
print("x == y:", x == y)    # False

# 逻辑运算符
print("and:", (x > 5) and (y < 5))  # True
print("or:", (x > 5) or (y > 5))    # True
print("not:", not (x > y))         # False
练习 3.1

练习1:创建一个包含销售数据的字典列表,计算总销售额和平均销售额。

练习2:使用列表推导式筛选出销售额超过平均值的记录。

练习3:统计每个产品的销售总额,并按销售额从高到低排序。

练习 1.1.2

练习1:计算 100 元打 8 折后的价格,以及 50 元打 9 折后的价格。

练习2:计算 2 的 10 次方,并判断结果是否大于 1000。

练习3:有三个数:15、28、42。计算它们的和、平均值、最大值和最小值。

1.1.3 条件语句

条件语句用于根据条件执行不同的代码:

代码示例
score = 85

if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")
elif score >= 60:
    print("及格")
else:
    print("不及格")

# 嵌套条件
age = 18
if age >= 18:
    print("成年人")
    if age >= 60:
        print("老年人")
else:

                        
练习 4.1

练习1:写一个提示词,让 AI 帮你写一个计算矩形面积的函数,包括清晰的输入输出说明。

练习2:使用错误处理,让 AI 帮你调试一段有错误的代码(故意制造错误)。

练习3:设计一个提示词,让 AI 帮你生成包含多个测试用例的单元测试代码。

print("未成年人")
练习 1.1.3

练习1:根据输入的成绩,判断等级:90-100 优秀,80-89 良好,70-79 中等,60-69 及格,60 以下不及格。

练习2:判断一个年份是否是闰年。闰年条件:能被4整除但不能被100整除,或者能被400整除。

练习3:输入三个数,按从大到小的顺序打印出来。

1.1.4 循环

循环用于重复执行代码:

代码示例
# for 循环
print("打印 1-5:")
for i in range(1, 6):
    print(i)

# while 循环
print("倒计时:")
n = 5
while n > 0:
    print(n)
    n -= 1
print("开始!")

# 循环控制
print("打印偶数:")
for i in range(1, 11):
    if i % 2 != 0:
        continue  # 跳过奇数
    print(i)
练习 1.1.4

练习1:使用 while 循环打印 1 到 10 的数字。

练习2:使用 for 循环计算 1+2+3+...+100 的总和。

练习3:打印九九乘法表(使用双层循环)。

1.1.5 核心数据结构

Python 的核心数据结构:

列表 (List)
代码示例
# 创建列表
fruits = ["苹果", "香蕉", "橙子", "葡萄"]

# 访问元素
print(fruits[0])    # 苹果
print(fruits[-1])   # 葡萄

# 修改元素
fruits[1] = "梨"

# 添加元素
fruits.append("草莓")

# 删除元素
fruits.remove("橙子")

# 遍历列表
print("所有水果:")
for fruit in fruits:
    print(fruit)
字典 (Dictionary)
代码示例
# 创建字典
student = {"name": "丘雅雯", "age": 20, "major": "商务数据分析"}

# 访问值
print(student["name"])

# 修改值
student["age"] = 21

# 添加键值对
student["grade"] = "大二"

# 遍历字典
print("学生信息:")
for key, value in student.items():
    print(key, ":", value)
元组 (Tuple) 和集合 (Set)
代码示例
# 元组(不可修改)
tuple1 = (1, 2, 3, 4, 5)
print(tuple1[0])

# 集合(无序,无重复)
set1 = {1, 2, 3, 3, 4, 5}  # 自动去重
print(set1)

# 集合操作
set2 = {4, 5, 6, 7}
print("交集:", set1 & set2)
print("并集:", set1 | set2)
print("差集:", set1 - set2)
练习 1.1.5

练习1:创建一个字典存储 5 个学生的姓名和成绩,然后计算平均成绩。

练习2:创建一个列表存储5个学生的成绩,计算平均分并找出最高分和最低分。

练习3:有一个列表 [1, 2, 3, 4, 5],使用列表推导式生成其平方的列表 [1, 4, 9, 16, 25]。

练习4:创建一个嵌套字典,存储多个学生的信息(姓名、年龄、成绩),然后打印出所有学生的姓名和成绩。

1.2 函数与模块

1.2.1 函数的定义与调用

函数是可重用的代码块:

代码示例
# 定义函数
def greet(name):
    """向某人问好"""
    return f"你好,{name}!"

# 调用函数
message = greet("丘雅雯")
print(message)

# 带默认参数的函数
def calculate_discount(price, discount_rate=0.1):
    """计算折扣后的价格"""
    return price * (1 - discount_rate)

# 调用函数
print(calculate_discount(1000))      # 使用默认折扣 10%
print(calculate_discount(1000, 0.2))  # 使用自定义折扣 20%
练习 1.2.1

练习1:定义一个函数,计算圆的面积,参数为半径。

练习2:定义一个函数,判断一个数是奇数还是偶数,返回相应的字符串。

练习3:定义一个函数,接受任意数量的数字,返回它们的最大值和最小值。

1.2.2 模块的导入与使用

模块是包含 Python 代码的文件:

代码示例
# 导入整个模块
import math
print("π 的值:", math.pi)
print("平方根:", math.sqrt(16))

# 导入特定函数
from random import randint, choice
print("随机整数:", randint(1, 100))
print("随机选择:", choice(["苹果", "香蕉", "橙子"]))

# 导入并更名
import datetime as dt
print("当前时间:", dt.datetime.now())
练习 1.2.2

练习1:导入 math 模块,使用 math 模块计算 25 的平方根、e 的幂次方(e^2)和 90 度的正弦值。

练习2:使用 datetime 模块,获取当前日期和时间,并格式化输出为 "2024年1月1日 12:00:00" 的形式。

练习3:使用 random 模块,生成一个包含 10 个随机整数的列表(范围1-100),并找出其中的最大值。

单元总结

通过本单元的学习,你已经掌握了 Python 的基础语法和核心数据结构,这些是与 AI 沟通的基础。现在你可以:

  • 理解和使用变量、数据类型
  • 编写条件语句和循环
  • 使用列表、字典等数据结构
  • 定义和调用函数
  • 导入和使用模块

这些技能将帮助你与 AI 更有效地协作,理解 AI 生成的代码,并向 AI 清晰地描述你的需求。

单元测验

测试你对本单元内容的掌握程度:

一、选择题

1. 以下哪个不是 Python 的数据类型?

2. 以下哪种数据结构是不可修改的?

3. 以下代码的输出是什么?

x = 10
y = 3
print(x // y)

4. 以下哪个是正确的函数定义?

二、编程题

1. 编写一个函数,计算两个数的和。

def add(a, b):
    # 请在下面添加代码
    pass

# 测试函数
print(add(3, 5))  # 应该输出 8

2. 编写一个程序,打印 1 到 100 之间的所有偶数。

# 请在下面添加代码

3. 编写一个程序,计算列表中所有元素的平均值。

def calculate_average(numbers):
    # 请在下面添加代码
    pass

# 测试函数
scores = [85, 90, 78, 92, 88]
print(calculate_average(scores))  # 应该输出 86.6
三、答案

选择题答案:

  1. D. boolean (正确答案是 bool)
  2. C. 元组
  3. B. 3
  4. A 和 C (都是正确的函数定义格式)

编程题答案:

# 1. 计算两个数的和
def add(a, b):
    return a + b

# 2. 打印 1 到 100 之间的所有偶数
for i in range(2, 101, 2):
    print(i)

# 3. 计算列表中所有元素的平均值
def calculate_average(numbers):
    return sum(numbers) / len(numbers)

模块二:关键思维 - 代码结构化

进行中

2.1 面向对象编程基础

  • 类和对象的基本概念
  • 属性与方法
  • 简单的继承思想
  • 理解和使用现有类(如 Pandas DataFrame)
代码示例
class Student:
    def __init__(self, name, age, scores):
        self.name = name
        self.age = age
        self.scores = scores
    
    def get_average_score(self):
        return sum(self.scores) / len(self.scores)

# 使用类
stu = Student("丘雅雯", 20, [85, 90, 78])
average = stu.get_average_score()
print(f"{stu.name}的平均成绩: {average}")

模块三:数据分析的"枪杆子"

待学习

3.1 数据处理三件套

  • Pandas 核心操作(数据读取、清洗、转换、分析)
  • NumPy 数值计算基础
  • Matplotlib/Seaborn 数据可视化
  • 完整数据分析流程实践
代码示例
import pandas as pd
import matplotlib.pyplot as plt

# 模拟数据
data = {
    'month': ['1月', '2月', '3月', '4月', '5月', '6月'],
    'sales': [12000, 15000, 18000, 14000, 16000, 20000]
}
df = pd.DataFrame(data)

# 计算每月销售额总和
monthly_sales = df.groupby('month')['sales'].sum()

# 绘制柱状图
monthly_sales.plot(kind='bar')
plt.title('月度销售额')
plt.xlabel('月份')
plt.ylabel('销售额')
plt.show()

# 打印数据
print("销售数据:")
print(df)
print("\n每月销售额总和:")
print(monthly_sales)

模块四:AI 时代高效学法

待学习

4.1 与 AI 协作的专项技能

  • 精准提问:向 AI 描述数据任务
  • 代码调试:利用 AI 解决错误
  • 代码理解与修改:阅读和调整 AI 生成的代码
  • 模仿与修改:基于 AI 示例进行个性化调整
代码示例
# 示例:向 AI 提问
"""
请用 pandas 读取 sales.csv,计算每个月的销售额总和,并画出柱状图
"""

# AI 生成的代码(示例)
import pandas as pd
import matplotlib.pyplot as plt

# 模拟数据
data = {
    'month': ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'],
    'sales': [12000, 15000, 18000, 14000, 16000, 20000]
}
df = pd.DataFrame(data)

# 计算每月销售额
monthly_sales = df.groupby('month')['sales'].sum()

# 绘制图表
plt.figure(figsize=(10, 6))
monthly_sales.plot(kind='bar', color='skyblue')
plt.title('Monthly Sales Summary')
plt.xlabel('Month')
plt.ylabel('Sales Amount')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

# 打印数据
print("Sales Data:")
print(df)
print("\nMonthly Sales:")
print(monthly_sales)

🎯 拓展练习

进行中

更多精选练习题

巩固所学知识,提升编程能力。这些练习题涵盖了 Python 基础的各个方面,难度循序渐进。

📚 Python 基础练习题 2.0 进阶

学习资源

推荐书籍

  • 《Python 编程:从入门到实践》
  • 《Python 数据分析》(Wes McKinney)
  • 《流畅的 Python》
  • 《利用 Python 进行数据分析》

在线资源

  • Python 官方文档
  • Pandas 官方文档
  • Kaggle 数据分析教程
  • AI 辅助编程平台(如 GitHub Copilot)

开发工具

  • Jupyter Notebook(数据分析首选)
  • VS Code + Python 扩展
  • PyCharm
  • Google Colab(在线运行环境)

数据集资源

  • Kaggle 公开数据集
  • UCI 机器学习库
  • 国家统计局数据
  • 企业销售模拟数据

常见问题

学习 Python 需要什么基础?

本课程是为零基础学员设计的,不需要任何编程基础。只要您有学习的热情和耐心,就可以跟随课程进度逐步掌握 Python 编程。

为什么要在 AI 时代学习 Python?

在 AI 时代,Python 不仅是编程工具,更是与 AI 协作的"元语言"。通过学习 Python,您可以更有效地指挥 AI 完成数据分析任务,将自己的角色从"代码工人"转变为"产品经理+架构师+质检员"。

需要安装什么软件?

推荐安装:Python 3.8 或更高版本、Jupyter Notebook(数据分析首选)、VS Code + Python 扩展。课程会详细讲解安装步骤。

如何高效利用 AI 辅助学习?

1. 精准提问:清晰描述您的任务需求
2. 代码调试:将错误信息直接抛给 AI
3. 代码理解:分析 AI 生成的代码逻辑
4. 模仿修改:基于 AI 示例进行个性化调整

学习完本课程能达到什么水平?

学习完本课程后,您将掌握 Python 基础编程技能,能够与 AI 有效协作,完成数据分析的完整流程,为商务数据分析工作打下坚实基础。

如何获取更多帮助?

您可以:1. 利用 AI 工具解决编程问题
2. 参考官方文档和在线教程
3. 加入 Python 学习社区(如 Stack Overflow)
4. 参与 Kaggle 等平台的数据分析竞赛

测试区域

测试1:标准输出

测试print输出和变量打印

测试代码
print("Hello, World!")
print("测试中文输出")

# 打印多个值
x = 10
y = 20
print("x =", x, "y =", y)
print(x + y)

# 多行输出
for i in range(1, 6):
    print(f"第 {i} 行")

测试2:SyntaxError

测试语法错误捕获和显示

测试代码
# 语法错误
if x > 0
    print("x is positive")

测试3:NameError

测试未定义变量错误

测试代码
# 使用未定义的变量
print(undefined_variable)

测试4:IndexError

测试索引越界错误

测试代码
# 列表索引越界
my_list = [1, 2, 3]
print(my_list[10])

测试5:无输出

测试没有输出的情况

测试代码
# 没有输出的代码
x = 1 + 1
y = x * 2