概述

写本文的目的是帮助真零工科背景的人学习Python编程以提高工作效率,这里不涉及太多专业概念。掌握了这些最基本的,配合大模型,读者将在工作中循序渐进逐步掌握Python的开发方法。

对于初学者而言,把时间花在搭建环境上很容易挫伤学习的锐气。因此,这里采用在线的 Jupyter Notebook 作为开发环境引导读者学习。Jupyter Notebook 提供了一种非常简单的在线交互式环境帮助用户运行Python代码并显示结果。本机不需要进行任何配置,只要连上网即可。

本文采用Python 3.10,但是内容均支持Python 3.x。

Jupyter Notebook

Jupyter Notebook 用法简单讲下:
JupyterNotebookOfficial
在这里插入图片描述
浏览器打开上述链接,找到Jupyter Notebook,这里采用经典的即可,最新的留给读者探索。
在这里插入图片描述
打开之后,网站上已经给出了一个使用案例(你可以删了或者新建一个)。

第一个程序

print("Hello, 世界!")

运行后你会看到输出:Hello, 世界!


2. 变量的概念与数据类型

注意,为了方便理解,下文中代码变量名称可能会用中文,实际上Python并不支持中文变量名称。

什么是变量?

变量就像一个带名字的盒子,用来装各种类型的数据。你可以给盒子起名,然后往里面放东西。

# 变量就像贴了标签的盒子
年龄 = 16
姓名 = "小明"
身高 = 1.75
是否爱学习 = True

四种基本数据类型

类型 中文意思 特点 例子
int 整数 没有小数点的数字 age = 15(年龄15岁)
float 浮点数 带小数点的数字 score = 92.5(分数)
str 字符串 文字/符号,用引号包裹 name = "小明"
boolean 布尔值 只有两种结果:对/错 is_pass = True(及格)
整数(int)
年龄 = 16
班级人数 = 45
分数 = 100
浮点数(float)
身高 = 1.75
体重 = 55.5
圆周率 = 3.14159
字符串(str)
姓名 = "张三"
地址 = "北京市朝阳区"
爱好 = "读书、音乐"
布尔值(boolean)
考试通过 = True
作业完成 = False
下雨了 = True

数据类型转换图

可以转换为
可能失去精度
数字转字符
数字转字符
逻辑判断
逻辑判断
整数 int
浮点数 float
整数 int
字符串 str
布尔值 bool

数学运算

# 基本运算
a = 10
b = 3

加法 = a + b        # 13
减法 = a - b        # 7
乘法 = a * b        # 30
除法 = a / b        # 3.333...
整数除法 = a // b    # 3
取余数 = a % b      # 1
乘方 = a ** b       # 1000

逻辑运算

判断“条件是否成立”,用生活例子理解:

运算符 意思 例子(是否满足条件) 结果
and 并且(同时满足) 考试及格(True)并且完成作业(True) True
or 或者(满足一个) 语文及格(False)或者数学及格(True) True
not 不(反转结果) 不是不及格(not False) True
# 比较运算(返回布尔值)
5 > 3        # True
5 < 3        # False
5 == 5       # True
5 != 3       # True

# 逻辑运算
True and False  # False
True or False   # True
not True        # False
not False       # True

3. 简单数据结构

当需要装多个数据时,用这两个 “容器” 更方便~

列表(List)

列表就像一个有序的物品清单,可以存放多个数据。列表用 [] 表示,里面的元素按顺序排列,像排队一样能按“序号”找到:

# 创建列表
学生姓名 = ["张三", "李四", "王五"]
各科成绩 = [85, 92, 78, 90]
混合数据 = ["小明", 16, 1.75, True]

# 访问列表元素(从0开始计数)
print(学生姓名[0])    # "张三"
print(各科成绩[2])    # 78

# 列表操作
学生姓名.append("赵六")        # 添加元素
学生姓名.remove("李四")        # 删除元素
len(学生姓名)                  # 获取长度

字典(Dict)

字典就像一本词典,通过"关键词"(键)来查找"解释"(值)。字典用 {} 表示,每个数据都有一个“标签”(key),按标签找数据,不用记顺序:

# 创建字典
学生信息 = {
    "姓名": "张三",
    "年龄": 16,
    "身高": 1.75,
    "爱好": ["篮球", "音乐"],
    "考试通过": True
}

# 访问字典值
print(学生信息["姓名"])    # "张三"
print(学生信息["年龄"])    # 16

# 修改字典
学生信息["年龄"] = 17      # 修改值
学生信息["城市"] = "北京"  # 添加新键值对

4. 基础控制流程

控制代码“做什么、做几次”,像玩游戏的规则一样~

条件判断(if)如果…就…

判断条件,满足就执行对应的操作:

# 基本if结构
年龄 = 18

if 年龄 >= 18:
    print("你已经成年了!")
else:
    print("你还未成年")

# 多重条件
成绩 = 85

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

循环(for)重复做n次

按顺序遍历数据,或重复固定次数:

# 遍历列表
学生列表 = ["张三", "李四", "王五"]

for 学生 in 学生列表:
    print(f"学生:{学生}")

# 数字循环
for i in range(5):
    print(f"数字:{i}")
    # 输出:数字:0, 数字:1, 数字:2, 数字:3, 数字:4

循环(while)只要…就一直做

只要条件成立,就反复执行(注意别无限循环!):

# while循环
计数器 = 0

while 计数器 < 5:
    print(f"计数:{计数器}")
    计数器 = 计数器 + 1

# 实际应用:简单计算器
用户输入 = 0
while 用户输入 != -1:
    用户输入 = int(input("请输入数字(-1退出):"))
    if 用户输入 != -1:
        print(f"你输入了:{用户输入}")
True
False
Yes
No
开始
条件判断
执行条件代码
执行else代码
继续执行
继续循环?
结束

5. 函数定义与调用

把常用的操作做成“工具”,需要时直接调用,不用重复写代码~

什么是函数?

函数就像一个会自动执行的工具。我们给它输入(参数),它处理后给我们输出(返回值)。

# 定义函数
def 打招呼(姓名):
    """向指定的人打招呼"""
    消息 = f"你好,{姓名}!欢迎学习Python!"
    return 消息

# 调用函数
结果 = 打招呼("小明")
print(结果)  # 输出:你好,小明!欢迎学习Python!

# 带多个参数的函数
def 计算总和(数字1, 数字2):
    """计算两个数字的总和"""
    总和 = 数字1 + 数字2
    return 总和

结果 = 计算总和(10, 20)
print(结果)  # 输出:30

定义函数

def 开头,格式:def 函数名(参数): 操作 return 结果

# 例子1:计算两个数的和(有参数、有返回值)
def add(a, b):
    result = a + b
    return result  # 返回计算结果

# 例子2:打招呼(有参数、无返回值)
def say_hello(name):
    print("你好,", name, "!")

调用函数

直接写“工具名+参数”,就能使用:

sum_result = add(3, 5)
print(sum_result)  # 输出:8

say_hello("小明")  # 输出:你好, 小明 !

函数类型示例

# 无返回值函数
def 打印欢迎语():
    print("欢迎学习Python编程!")

# 有返回值函数
def 求平均值(列表数据):
    总和 = sum(列表数据)
    平均值 = 总和 / len(列表数据)
    return 平均值

# 带默认参数的函数
def 问候(姓名, 语气="友善"):
    return f"{姓名}{语气}地问候你!"

print(问候("小明"))           # 小明,友善地问候你!
print(问候("小红", "热情"))     # 小红,热情地问候你!

6. 类与对象

类是“模板”,对象是按模板造出来的“实物”。比如“汽车模板”能造很多辆具体的“汽车”~

什么是类和对象?

类(Class)是对象的模板,对象(Object)是类的实例。

生活例子:

  • 类:汽车的图纸
  • 对象:一辆具体的汽车

定义类(模板)

包含“属性”(实物的特征)和“方法”(实物能做的事):

# 定义一个“学生模板”
class Student:
    # 初始化属性(名字、年龄、成绩)
    def __init__(self, name, age, score):
        self.name = name  # 属性:名字
        self.age = age    # 属性:年龄
        self.score = score# 属性:成绩
    
    # 方法:打印学生信息
    def show_info(self):
        print(f"姓名:{self.name},年龄:{self.age},分数:{self.score}")

创建对象(实物)

按模板造具体的学生:

# 用模板造两个学生对象
student1 = Student("小明", 15, 85)
student2 = Student("小红", 14, 92)

# 调用对象的方法
student1.show_info()  # 输出:姓名:小明,年龄:15,分数:85
student2.show_info()  # 输出:姓名:小红,年龄:14,分数:92

完整的学生管理系统示例

class 学生管理器:
    def __init__(self):
        self.学生列表 = []
    
    def 添加学生(self, 学生对象):
        self.学生列表.append(学生对象)
        print(f"成功添加学生:{学生对象.姓名}")
    
    def 显示所有学生(self):
        for 学生 in self.学生列表:
            print(学生.打招呼())

# 使用学生管理系统
管理器 = 学生管理器()
管理器.添加学生(学生1)
管理器.添加学生(学生2)
管理器.显示所有学生()

7. 文件操作:读写CSV表格

CSV是简单的表格文件(像Excel),Python能轻松创建和写入数据~

读写CSV文件步骤

# 1. 导入处理CSV的工具
import csv

# 2. 要写入的数据(列表里装字典,每个字典是一行)
data = [
    {"姓名": "小明", "年龄": 15, "分数": 85},
    {"姓名": "小红", "年龄": 14, "分数": 92},
    {"姓名": "小刚", "年龄": 15, "分数": 78}
]

# 3. 打开文件(with语句会自动关闭文件,不用手动管)
with open("学生成绩.csv", "w", encoding="utf-8", newline="") as f:
    # 4. 创建写入器,指定表格标题
    writer = csv.DictWriter(f, fieldnames=["姓名", "年龄", "分数"])
    writer.writeheader()  # 写入标题行
    writer.writerows(data)  # 写入所有数据

print("CSV文件创建成功!")

运行后,会生成一个“学生成绩.csv”文件,用Excel打开就能看到表格~


8. 包管理

什么是包(Package)?

包是Python代码的集合,让我们可以重复使用别人写的代码。

使用pip管理包

pip是Python自带的“软件管家”,能下载别人写好的工具(叫package),不用自己从零写代码~

命令 作用 例子
pip install 包名 安装工具 pip install requests(安装网络工具)
pip install -U 包名 更新工具到最新版本 pip install -U requests
pip uninstall 包名 卸载工具 pip uninstall requests

提示:在电脑的“命令提示符”(Windows)或“终端”(Mac)里输入这些命令~

常用包示例

# 导入并使用包
import math
import datetime

# 使用math包
圆的面积 = math.pi * 半径**2
平方根 = math.sqrt(16)

# 使用datetime包
当前时间 = datetime.datetime.now()
格式化时间 = 当前时间.strftime("%Y-%m-%d %H:%M:%S")

包管理生命周期

需要功能
搜索包
pip install 包名
导入包
使用功能
项目完成
不需要时
pip uninstall 包名
清理依赖

9. JSON格式

JSON是一种数据格式,像Dict的“国际版”,很多网站/APP都用它交换数据。

什么是JSON?

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,特别适合在不同系统之间传输数据。
JSON和Dict的区别:

  • Dict:Python里的“标签盒”,key可以不加引号,值能是任意类型
  • JSON:字符串格式,key必须加双引号,值只能是字符串、数字、列表、字典、True/False/None

Dict ↔ JSON 转换

json 模块实现转换:

import json

# 1. Dict 转 JSON(变成字符串)
student_dict = {"name": "小明", "age": 15, "is_pass": True}
json_str = json.dumps(student_dict, ensure_ascii=False)  # ensure_ascii=False:显示中文
print(json_str)  # 输出:{"name": "小明", "age": 15, "is_pass": true}

# 2. JSON 转 Dict(字符串变标签盒)
json_str = '{"name": "小红", "age": 14, "is_pass": true}'
student_dict = json.loads(json_str)
print(student_dict["name"])  # 输出:小红

实际应用:保存和加载用户数据

def 保存用户数据(用户列表, 文件名="用户数据.json"):
    """保存用户数据到JSON文件"""
    with open(文件名, "w", encoding="utf-8") as 文件:
        json.dump(用户列表, 文件, ensure_ascii=False, indent=2)
    print(f"数据已保存到 {文件名}")

def 加载用户数据(文件名="用户数据.json"):
    """从JSON文件加载用户数据"""
    try:
        with open(文件名, "r", encoding="utf-8") as 文件:
            return json.load(文件)
    except FileNotFoundError:
        print(f"文件 {文件名} 不存在")
        return []

# 使用示例
用户数据 = [
    {"姓名": "张三", "年龄": 16},
    {"姓名": "李四", "年龄": 15}
]

保存用户数据(用户数据)
加载的数据 = 加载用户数据()
print("加载的数据:", 加载的数据)

结语

Python的基础就这些啦!重点是多敲例子,比如用List存自己的书单、用Dict记同学的爱好、调用大模型问问题~ 后续可以学:

  • requests 爬取网页数据
  • pandas 分析CSV表格
  • 用大模型做简单的聊天机器人

坚持“边敲边想”,很快就能用Python解决小问题啦~

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐