知识公社 | 课程 · Python 极速入门
PYTHON · ZERO TO RUNNING

Python 极速入门 · 8 讲

零基础、每天一讲,8 天写出自己的小程序;每讲都可以直接复制代码运行。

第 1 讲 · 安装与第一行代码

目标:装好 Python,运行出你的第一个程序。
print("你好,世界!")
print(1 + 2)          # 输出 3
小测:让它输出你自己的名字和今年的年份。

第 2 讲 · 变量与运算

目标:会用变量保存数据,会做基本计算。
name = "小明"        # 文字(字符串)
age = 18             # 整数
height = 1.75        # 小数
is_student = True    # 布尔
print(age + 1)       # 19
print(age * 2, age / 2, age // 2, age % 2)  # 36 9.0 9 0
print(f"{name}今年{age}岁")  # f-string 拼接(重点)
小测:让用户输入两个数(input),输出两数之和与平均值。

第 3 讲 · 输入输出与字符串

s = input()              # 读一行文字
n = int(input())         # 读一个整数
a, b = map(int, input().split())   # 读两个整数
print(s.upper())         # 全大写
print(len(s))            # 长度
print(s[0], s[-1])       # 第一个 / 最后一个字符
print(s[1:4])            # 切片:第 1~3 个字符
print(s.replace("a", "b"))       # 替换
print(",".join(["甲","乙","丙"])) # 甲,乙,丙
小测:输入一句话,输出它的长度、全大写形式和反转(s[::-1])。

第 4 讲 · 列表、字典、集合

目标:三大容器装满你的数据。
a = [3, 1, 2]            # 列表
a.append(4)              # 追加 → [3,1,2,4]
a.sort()                 # 排序 → [1,2,3,4]
print(sum(a), max(a), min(a))

d = {"语文": 90, "数学": 95}   # 字典(键值对)
d["英语"] = 88
print(d["数学"])          # 95
for k, v in d.items(): print(k, v)

s = {1, 2, 2, 3}          # 集合(自动去重)
print(len(s))             # 3
小测:把一段文字中出现的单词统计出现次数(提示:字典计数)。

第 5 讲 · 条件与循环

# 判断
score = 85
if score >= 90:
    print("优秀")
elif score >= 60:
    print("及格")
else:
    print("加油")

# 循环
for i in range(1, 6):     # 1 2 3 4 5
    print(i)
total = 0
for x in [1, 2, 3, 4]:
    total += x
print(total)              # 10
# while:不知道循环几次时用
n = 100
while n > 1:
    n = n // 2
print("折半次数到 1")
小测:输出 1–100 里所有 3 的倍数;再用循环求 1+2+...+100。

第 6 讲 · 函数与递归

def add(a, b):            # 定义函数
    return a + b
print(add(2, 3))          # 5

def fib(n):               # 递归:斐波那契
    if n <= 2: return 1
    return fib(n-1) + fib(n-2)
print(fib(10))            # 55
小测:写函数判断一个数是不是质数;写递归求 n 的阶乘。

第 7 讲 · 文件、异常与常用库

# 读写文件
with open("note.txt", "w", encoding="utf-8") as f:
    f.write("今天学完了第 7 讲!")
with open("note.txt", encoding="utf-8") as f:
    print(f.read())

# 异常处理
try:
    x = int(input())
except ValueError:
    print("输入的不是数字")

# 常用库
import random
print(random.randint(1, 6))   # 掷骰子
import math
print(math.sqrt(2))           # 1.414...
import datetime
print(datetime.date.today())
小测:做一个"随机出题的口算练习器",把每次成绩追加写进文件。

第 8 讲 · 用 Python 刷题(衔接竞赛课)

目标:把前面七讲用起来,开始在线判题。
n = int(input())
a = list(map(int, input().split()))
print(sum(a), max(a))
毕业小测:连续 7 天每天用 Python 做 1 道题并提交通过。