Skip to content

Python 基础语法与 AI 入门

这篇是给真正的初学者准备的。我们不默认你已经会编程,会从变量、字符串、列表、元组、字典、条件判断、循环、函数这些最基础的东西讲起,并且始终带着一个目标:学完以后,你能看懂 AI 相关 Python 代码,也能自己写一些小脚本。

先别紧张。

你现在不需要一下子变成 Python 工程师。对想学 AI API 调用、自动化脚本和基础数据处理的人来说,第一阶段只需要掌握一件事:能读懂基础代码,能改小例子,能写简单脚本。这篇就是帮你把这个基础搭起来。

02. Python 到底是什么

Python 是一门通用编程语言,因为语法相对清晰、社区大、库很多,所以在 AI、数据分析、自动化脚本、后端开发里都非常常见。

为什么 AI 圈常用 Python

  • 语法相对直观,适合快速实验。
  • 生态成熟,很多 AI 框架默认就是 Python。
  • 写脚本和写应用都方便。
  • 社区资料和示例非常多。

你现在先不用担心的事

  • 不用先学很深的算法。
  • 不用先会复杂面向对象。
  • 不用先懂底层编译原理。
  • 先把基础语法和读代码能力打稳就够了。

03. 变量、类型、输入输出

3.1 什么是变量

变量就是一个名字,用来暂时保存数据。

python
name = "小王"
age = 18
score = 95.5
is_student = True

上面四个变量分别保存了字符串、整数、浮点数、布尔值。

类型例子用途
str"hello"文字内容
int18整数
float95.5小数
boolTrue / False真假判断

3.2 输出:先学会看结果

python
name = "小王"
print(name)
print("你好,", name)

print() 是最常见的输出函数。学习编程早期,print 就像手电筒,能帮你看见变量里到底装了什么。

3.3 输入:让程序接收用户内容

python
name = input("请输入你的名字:")
print("欢迎你,", name)

注意。

input() 拿到的默认是字符串。如果你输入的是数字,想拿来做数学运算,通常要先转换类型。

python
age = int(input("请输入年龄:"))
print(age + 1)

04. 字符串与常见处理

字符串就是文本。AI 应用里几乎到处都在处理字符串,因为 prompt、用户问题、模型输出,本质上都和文本强相关。

4.1 常见字符串操作

python
text = "hello python"
print(text.upper())
print(text.replace("python", "AI"))
print(len(text))

4.2 格式化输出

python
name = "小李"
score = 98
print(f"{name} 的分数是 {score}")

f"..." 是非常常用的写法,后面你写日志、拼 prompt、拼路径时都会经常用到。

4.3 字符串切片

python
text = "abcdef"
print(text[0])
print(text[1:4])
print(text[-1])

切片是 Python 很有代表性的能力,后面处理列表、日志、文本片段时也会经常看到。

05. 列表、元组、字典、集合

这一节非常重要。因为你以后写程序,绝大多数时间都在和“装数据的容器”打交道。

5.1 列表 list:最常用

python
fruits = ["苹果", "香蕉", "橘子"]
print(fruits[0])
fruits.append("葡萄")
print(fruits)

列表的特点是:有顺序、可以修改、可以增加删除元素。

列表常见操作

python
nums = [1, 2, 3]
nums.append(4)
nums.insert(0, 100)
nums.remove(2)
print(len(nums))
print(nums)

以后你拿到一批文档、一批消息、一批 API 结果时,通常都会先放进列表里处理。

5.2 元组 tuple:这正是你刚提到要补的重点

python
point = (10, 20)
print(point[0])
print(point[1])

元组和列表有点像,但最大的区别是:元组通常不改。你可以把它理解成“更稳定的记录”。

列表

  • []
  • 可以改、可以加、可以删
  • 适合动态数据

元组

  • ()
  • 通常不修改
  • 适合固定结构的数据
python
user = ("张三", 28, "北京")
name, age, city = user
print(name)
print(age)
print(city)

上面这种写法叫解包,非常实用。以后函数返回多个值时,你会经常看到元组解包。

元组两个特别容易忽略的小点

  • 只有一个元素的元组要写成 (1,),后面的逗号不能少。
  • “元组不能改”更准确地说,是元组本身的结构通常不改。
python
single = (5,)
print(type(single))

5.3 字典 dict:键值对容器

python
student = {
    "name": "小王",
    "age": 18,
    "score": 95
}
print(student["name"])
print(student["score"])

字典特别适合表达“字段名 -> 值”的结构。以后你处理 JSON、API 响应、配置项,几乎一定会遇到字典。

字典常见操作

python
student = {"name": "小王", "age": 18}
print(student.get("name"))
student["city"] = "北京"
student["age"] = 19
print(student)

很多 AI SDK 返回的数据,本质上就是嵌套字典。你以后看到 response["choices"][0]["message"]["content"] 这类写法,不要怕,它只是字典和列表在一起使用。

5.4 集合 set:去重很方便

python
nums = {1, 2, 2, 3, 3, 3}
print(nums)

集合的一个典型用途就是去重。

5.5 这四种容器怎么选

容器特点适合什么场景
list有序、可改一批可增删的数据
tuple有序、通常不改固定结构数据、函数多返回值
dict键值映射用户信息、配置、JSON
set无重复去重、成员判断

06. 条件判断

程序不是每次都做同一件事,经常要根据不同情况做不同处理,这就需要条件判断。

python
age = 20
if age >= 18:
    print("你已经成年")
else:
    print("你还未成年")

6.1 多条件判断

python
score = 85
if score >= 90:
    print("优秀")
elif score >= 60:
    print("及格")
else:
    print("不及格")

一个非常重要的 Python 语法点。

Python 不靠大括号区分代码块,而是靠缩进。也就是说,缩进不是格式问题,而是语法本身的一部分。

6.2 条件里常见的逻辑运算

python
age = 20
has_ticket = True

if age >= 18 and has_ticket:
    print("可以入场")
  • and:并且
  • or:或者
  • not:取反

07. 循环:for、while、break、continue

你专门提到“循环”,这部分我给你展开讲清楚。循环就是让程序重复做某件事。

7.1 for 循环:最常用

python
fruits = ["苹果", "香蕉", "橘子"]
for fruit in fruits:
    print(fruit)

这段代码的意思很简单:把列表里的每个元素依次拿出来,放到 fruit 这个变量里,然后打印。

7.2 range:生成一串数字

python
for i in range(5):
    print(i)

结果会打印:0 1 2 3 4。也就是说,range(5) 表示从 0 到 4。

python
for i in range(1, 6):
    print(i)

这次就是从 1 打印到 5。

7.3 while 循环:满足条件就一直重复

python
count = 0
while count < 3:
    print(count)
    count += 1

这段代码会打印 0、1、2。每执行一次,count 增加 1,直到条件不成立。

7.4 break:提前结束循环

python
for i in range(10):
    if i == 5:
        break
    print(i)

i == 5 时,循环会直接停止。

7.5 continue:跳过本轮,继续下一轮

python
for i in range(5):
    if i == 2:
        continue
    print(i)

这段代码会跳过 2,不打印它。

7.6 循环里最容易踩的坑

坑 1:死循环

while 条件一直成立,但变量没更新,程序就会停不下来。

坑 2:缩进错

循环内部的代码如果缩进不对,执行范围就会完全变样。

坑 3:边遍历边乱改

遍历列表时同时随意删除元素,容易出错或漏项。

7.7 一个非常实用的写法:enumerate

python
fruits = ["苹果", "香蕉", "橘子"]
for index, fruit in enumerate(fruits):
    print(index, fruit)

这样你既能拿到元素本身,也能拿到下标。

7.8 for 循环和 while 循环怎么选

情况推荐
你知道要遍历哪些元素for
你知道要循环几次for + range
你不知道循环几次,只知道何时结束while

给 AI 初学者一个真实感。

你以后处理一批文本、遍历一组文件、批量请求接口、循环读取模型返回结果时,循环都非常常见。所以这部分不是“课本知识”,而是你很快就会用上的基本功。

7.9 嵌套循环先建立直觉就够了

python
for i in range(2):
    for j in range(3):
        print(i, j)

外层循环跑一次,内层循环会完整跑一遍。以后做二维表格、组合遍历时会见到它。

7.10 列表推导式:先看懂,不用急着滥用

python
nums = [1, 2, 3, 4]
squares = [n * n for n in nums]
print(squares)

这是一种更紧凑的写法。初学时只要先能看懂,不一定一上来就全都用它。

08. 函数与返回值

函数就是把一段可复用逻辑包起来,起个名字,以后重复使用。

python
def say_hello(name):
    print(f"你好,{name}")

say_hello("小王")

8.1 带返回值的函数

python
def add(a, b):
    return a + b

result = add(3, 5)
print(result)

return 的意思是:把结果交回去。

8.2 一个函数可以返回多个值

python
def get_user_info():
    return "小王", 18, "上海"

name, age, city = get_user_info()
print(name, age, city)

这里本质上就是返回了一个元组,然后解包。你看,元组又在这里派上用场了。

8.3 参数、返回值、函数名,要尽量清楚

  • 函数名要让人一看就知道做什么。
  • 参数名不要太随意。
  • 返回值最好让调用方容易理解和使用。

8.4 默认参数和关键字参数

python
def greet(name, city="上海"):
    print(f"你好,{name},你来自 {city}")

greet("小王")
greet("小李", city="北京")

这种写法在 SDK 和工具函数里很常见。你以后看到某个参数“可传可不传”,大概率就是默认参数。

09. 文件、异常、模块

9.1 文件读取

python
with open("demo.txt", "r", encoding="utf-8") as f:
    content = f.read()
    print(content)

以后你处理 prompt 模板、配置文件、数据文件时,经常会用到文件读取。

9.2 异常处理

python
try:
    num = int(input("请输入数字:"))
    print(num)
except ValueError:
    print("你输入的不是合法数字")

程序并不总会按预想运行,异常处理就是给程序兜底。

9.3 模块导入

python
import math
print(math.sqrt(16))

模块可以理解成“别人已经写好的工具箱”。以后你导入 requestsopenaijson 这类模块,本质上也是同一件事。

9.4 JSON 为什么你一定会遇到

python
import json

user = {"name": "小王", "age": 18}
text = json.dumps(user, ensure_ascii=False)
print(text)

AI 接口返回值、配置文件、前后端交互数据里,JSON 非常常见。而 JSON 在 Python 里通常就是字典和列表的组合。

10. 类和对象,要懂到什么程度

如果你是 AI 应用初学者,类和对象先知道基本概念就够了,不必一开始钻太深。

python
class Dog:
    def __init__(self, name):
        self.name = name

    def bark(self):
        print(f"{self.name} 在叫")

my_dog = Dog("旺财")
my_dog.bark()

类可以理解成“模板”,对象是“按模板创建出来的具体实例”。你以后看到 SDK 封装、客户端对象、配置对象时,就不会太陌生。

11. 这些语法怎么服务 AI 开发

你可能会问:我学这些基础语法,到底和 AI API、自动化脚本、数据处理有什么关系?其实关系很直接。

变量 → 保存 API Key、模型名、用户输入 → 列表/字典 → 组织 messages、JSON、工具结果 → 循环 → 批量处理文本、遍历结果

你会在 AI 代码里高频看到

  • 字典:表示 JSON 和消息对象
  • 列表:表示消息列表、文档列表、结果列表
  • 循环:批量调用接口或遍历输出
  • 函数:封装工具和业务逻辑

你学完后能更轻松地读懂

  • messages = [{...}, {...}]
  • for item in results:
  • def get_weather(city):
  • config["model"] = "gpt-4.1"

11.1 如果你以后要调 AI API,最少要会哪些 Python 能力

  1. 变量:保存 API Key、模型名、用户输入。
  2. 字典和列表:组织请求体和响应体。
  3. 循环:批量处理多个请求或结果。
  4. 函数:把重复逻辑封装起来。
  5. 异常处理:接口失败时给出提示或重试。

11.2 一个非常贴近 AI 的小例子

python
messages = [
    {"role": "system", "content": "你是一个有帮助的助手"},
    {"role": "user", "content": "请解释什么是 Transformer"}
]

for message in messages:
    print(message["role"], ":", message["content"])

这里就同时用到了:列表、字典、循环、字符串。也就是说,你学的基础语法,马上就能和 AI 代码接上。

12. 小练习、答案与学习路径

12.1 很适合现在就做的练习

练习 A:分数判断

输入一个分数,用 if / elif / else 输出等级。

练习 B:列表遍历

准备一个水果列表,用 for 循环把它们逐个打印。

练习 C:元组解包

定义一个元组保存姓名、年龄、城市,然后解包输出。

练习 D:写一个函数

写一个函数,接收两个数字,返回它们的和。

练习 E:读取文件

读取一个文本文件,把内容打印出来。

练习 F:AI 消息遍历

用列表 + 字典模拟一组 messages,再循环打印每条消息。

12.2 参考答案与讲解

怎么使用这一部分

建议先自己敲一遍,再来看参考答案。这里给的是“基础可运行版本”,重点是帮你建立正确写法和直觉,不是追求花哨技巧。

练习 A:分数判断

python
score = int(input("请输入分数:"))

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

这题的核心是练 if / elif / else。先把输入转成 int,否则拿字符串和数字比较会出问题。

练习 B:列表遍历

python
fruits = ["苹果", "香蕉", "橘子"]

for fruit in fruits:
    print(fruit)

这题重点是理解:for fruit in fruits 会把列表里的元素一个一个取出来。以后遍历文档列表、消息列表、接口结果时就是这个思路。

练习 C:元组解包

python
user = ("小王", 18, "上海")

name, age, city = user
print(name)
print(age)
print(city)

这题重点不是“会写元组”,而是理解固定结构的数据可以一次性拆开。后面函数返回多个值时,你会经常看到这种写法。

练习 D:写一个函数

python
def add(a, b):
    return a + b

result = add(3, 5)
print(result)

这题重点是理解函数的三个部分:函数名、参数、返回值。注意这里用的是 return,不是只在函数里面 print 结果。

练习 E:读取文件

python
with open("demo.txt", "r", encoding="utf-8") as f:
    content = f.read()
    print(content)

这题重点是认识 with open(...) 这种常见写法。它会在使用完成后自动关闭文件。前提是当前目录里已经有一个 demo.txt 文件。

练习 F:AI 消息遍历

python
messages = [
    {"role": "system", "content": "你是一个有帮助的助手"},
    {"role": "user", "content": "请解释什么是 Prompt"}
]

for message in messages:
    print(message["role"], ":", message["content"])

这题是把前面的语法和 AI 场景接起来。你需要同时看懂列表、字典、循环和字符串访问,这就是很多 AI API 示例代码的基础骨架。

12.3 推荐学习顺序

  1. 先学变量、字符串、列表、字典。
  2. 再重点练条件判断和循环。
  3. 然后学函数和返回值。
  4. 再补文件、异常、模块。
  5. 最后带着这些基础去看 AI API、小脚本和自动化示例。

给你一个务实建议。

不要追求“一次看完全部语法”。更有效的方法是:每学完一小块,就自己敲一遍、改一遍、试一遍。编程基础不是靠背会的,而是靠手感慢慢建立的。

12.4 一条很适合你的衔接路线

Python 基础语法 → Python + AI API → Prompt 处理 → 数据处理 / 自动化 → Transformer 原理

13. 下一步学什么

如果你把这篇里的内容掌握到“能看懂、能改、能自己写一点”,下一步就很自然了:

  • 先去看 Python 与 AI API 这类实操页,开始接接口。
  • 再练一些文本处理、JSON 解析、文件读写的小项目。
  • 再进入更深入的 AI 原理或测试专题,把基础语法真正用起来。

最后一句鼓励。

如果你现在还觉得“这些我能看懂,但写起来会慢”,这是完全正常的。对初学者来说,最重要的不是写得快,而是慢慢把变量、容器、循环、函数这些最基本的积木搭稳。积木稳了,后面的 AI 代码你会越来越能读懂,也越来越敢自己动手。