一、前言

本篇为纯上手实操向 Python 基础语法,所有代码均经过手写运行验证,新手跟着逐行执行即可掌握变量内存、列表复制、函数、条件判断、循环整套入门知识,避开 90% 新手踩坑点。

二、第一阶段:变量本质 —— 变量是标签不是盒子

实操代码

a = [1, 2, 3]          # 创建一个列表[1,2,3],给它贴上a这个标签
b = a                   # 让b也指向同一个列表(不是复制,是共享)
b.append(4)             # 往列表末尾添加元素4
print("a的值:", a)      # 输出:a的值: [1, 2, 3, 4]
print("b的值:", b)      # 输出:b的值: [1, 2, 3, 4]
print("a is b:", a is b) # 判断a和b是否指向同一个对象,输出True

关键点

b = a 不是把 a 的值复制给 b,而是让 b 和 a 指向同一个东西 所以通过 b 修改列表,a 也会变

三、第二部分:真正的复制

实操代码

x = [1, 2, 3]           # 创建列表,贴上x标签
y = x.copy()            # 复制一份全新的列表,贴上y标签
y.append(4)             # 往y的列表添加4
print("x:", x)          # 输出:x: [1, 2, 3](x没变)
print("y:", y)          # 输出:y: [1, 2, 3, 4]
print("x is y:", x is y) # 输出:False(不是同一个对象)

关键点

.copy () 会创建一个全新的列表

修改新列表,原列表不受影响

四、第三部分:赋值 vs 复制对比

实操代码

x = [1, 2]              # 创建列表[1,2],贴上x标签
y = x                   # y指向同一个列表(共享)
y.append(3)             # 添加3,x和y都变成[1,2,3]
z = x.copy()            # z是x的副本(独立)
z.append(4)             # 添加4,只有z变成[1,2,3,4]
print("x:", x)          # 输出:[1, 2, 3]
print("y:", y)          # 输出:[1, 2, 3]
print("z:", z)          # 输出:[1, 2, 3, 4]

关键点

y 和 x 共享,所以 y 改了 x 也变

z 是独立的,z 改了 x 不变

五、第四部分:函数基础

实操代码

def greet(name):                    # 定义函数,name是参数(占位符)
    print(f"你好,{name}!")          # f-string:用{}插入变量

greet("小明")                        # 调用函数,"小明"是实参,替换name
greet("小红")                        # 输出:你好,小红!

关键点

def 是定义函数的关键字

参数是函数定义时的占位符

实参是调用时传进去的真实值

f"..." 是格式化字符串,{变量名} 会被替换成变量的值

六、第五部分:带返回值的函数

实操代码

def add(a, b):          # 定义函数,接收两个参数
    return a + b        # return 把计算结果交出去

result = add(3, 5)      # 调用add(3,5),返回值8赋给result
print("3+5=", result)   # 输出:3+5= 8

关键点

return 是函数的 "出口",把结果传回调用的地方

没有 return 的函数,默认返回 None

七、第六部分:条件判断

实操代码

score = 85                  # 定义变量score为85

if score >= 90:             # 如果分数>=90
    print("优秀")           # 执行这行
elif score >= 80:           # 否则如果分数>=80
    print("良好")           # 执行这行(85满足这个条件)
elif score >= 60:           # 否则如果分数>=60
    print("及格")           # 跳过(因为上面已经匹配了)
else:                       # 以上都不满足
    print("不及格")         # 跳过

关键点

从上往下依次判断

只执行第一个满足条件的分支

elif = else if

缩进表示 "属于" 这个条件

八、第七部分:range 用法

实操代码

# 用法1:range(n) —— 从0到n-1
print("range(5):", end="")
for i in range(5):          # i会是0,1,2,3,4
    print(i, end=" ")       # end=""表示不换行,用空格分隔
print()                     # 空的print()就是换行

# 用法2:range(start, stop) —— 从start到stop-1
print("range(2,5):", end="")
for i in range(2, 5):       # i会是2,3,4
    print(i, end=" ")
print()

# 用法3:range(start, stop, step) —— 步长
print("range(0,10,2):", end="")
for i in range(0, 10, 2):   # i会是0,2,4,6,8
    print(i, end=" ")
print()

关键点

range (5) = 0,1,2,3,4(不包含 5)

range (2,5) = 2,3,4

range (0,10,2) = 0,2,4,6,8(每次 + 2)

end="" 让 print 不换行

九、第八部分:遍历列表

实操代码

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

# 方式1:直接遍历(拿到每个元素)
print("直接遍历")
for fruit in fruits:               # 每次循环,fruit是当前元素
    print(f" {fruit}")             # 输出:苹果、香蕉、橘子

# 方式2:用索引遍历(拿到下标)
print("用range遍历")
for i in range(len(fruits)):       # i会是0,1,2
    print(f" 第{i+1}个水果是{fruits[i]}")  # fruits[i]通过下标取元素

关键点

方式 1 更简洁,适合只需要元素时

方式 2 适合需要知道下标时

len (fruits) 返回列表长度(3)

十、核心概念总结

语法 含义
= 让变量指向某个对象
.copy() 创建一个全新的副本
def 函数名 (参数): 定义函数
return 把结果交出去
if/elif/else 条件判断,只执行第一个满足的
for x in 列表: 遍历列表每个元素
range(n) 生成 0 到 n-1 的序列
f"...{变量}..." 格式化字符串,插入变量值
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐