📊 开篇故事: 上周,一位刚学Python三天的读者小张私信我:“为什么我写的代码总是报错?明明照着教程敲的!” 我一看他的代码——缩进用了Tab,变量名写了1st_name,还忘了冒号。这三个经典“入门三连”,几乎每个Python新手都中招过。今天,我们就从最基础但又最容易出错的语法开始,帮你一次理清。
1️⃣ 变量与命名:别让Python“认不出”你的变量
Python的变量就像贴标签,但标签可不能乱贴。记住三条黄金法则:
- ✅ 只能包含字母、数字、下划线——比如
my_var 可以,但 my-var 不行 - ✅ 不能以数字开头——
1st_name 是雷区,换成 first_name 才对 - ✅ 区分大小写——
Name 和 name 是两码事
顺便说个实用小技巧:用“蛇形命名法”(snake_case)写变量名更Pythonic,比如 user_age 比 userAge 更易读。养成良好的命名习惯,三个月后回头看自己的代码,你会感谢现在的自己 😉
2️⃣ 缩进:Python的“强迫症”美学
如果说别的编程语言靠花括号 {} 来分块,那Python靠的就是“缩进”这个强迫症。同一层级的代码要严格对齐,否则直接报错 IndentationError。
# ✅ 正确写法:4个空格缩进
age = 18
if age >= 18:
print("成年了")
print("欢迎注册")
# ❌ 错误写法:缩进不一致
age = 18
if age >= 18:
print("成年了")
print("欢迎注册") # 少了一个空格,报错!
建议你永远只用4个空格来缩进,不要混用Tab!大部分编辑器(如VS Code、PyCharm)都能自动把Tab转成空格。如果你看到别人用Tab缩进,别学ta——维护起来真的会崩溃 😱
3️⃣ 数据类型:别把数字当文字用
Python常见的三种基础数据类型:整数(int)、浮点数(float)、字符串(str)。它们之间不能随意混用,新手最常犯的错误是:
# ❌ 错误:字符串和数字不能相加
result = "20" + 5 # 报错:TypeError
# ✅ 正确:先转换类型
result = int("20") + 5 # 结果25
# 或者用 f-string 拼接
name = "小明"
age = 18
print(f"{name}今年{age}岁了") # 输出:小明今年18岁了
判断一个变量的类型很简单——用 type() 函数:
print(type(3.14)) #
print(type("3.14")) #
4️⃣ 输入与输出:和用户“对话”
写程序不是自娱自乐,总要和人交互。Python的 input() 函数会等待用户输入,但有个大坑——它永远返回字符串!
# 输入年龄并计算明年年龄
age = input("请输入你的年龄:")
# ❌ 直接 +1 会报错,因为 age 是字符串
# print(int(age) + 1) # 这样才对
# 正确写法:
age = int(input("请输入你的年龄:"))
print(f"明年你就{age + 1}岁啦!")
小技巧:如果输入的是小数,用 float() 转换;如果是数字但可能有多种格式,可以用 eval() 但慎用(有安全风险)。
5️⃣ 条件判断:别踩“赋值==”的雷
在条件语句中,新手最容易把赋值运算符 = 和比较运算符 == 搞混。Python中不报错,但逻辑会完全跑偏:
password = "123456"
# ❌ 错误:赋值语句永远为 True(非空字符串为真)
if password = "123456":
print("登录成功!") # 这行永远执行,不安全!
# ✅ 正确:用 == 比较
if password == "123456":
print("登录成功!")
else:
print("密码错误!")
还有一个实用技巧:检查变量是否为空,可以用 if not var: 代替 if var == None,更简洁。比如:
name = input("请输入名字:")
if not name: # 如果用户没输入
print("名字不能为空!")
🎯 总结:基础不牢,地动山摇
🔥 今天的关键知识回顾:
input()
学Python就像学骑自行车——刚开始总会晃,但掌握了平衡之后,你会发现它真的很优雅。如果你今天第一次接触Python,不妨打开你的编辑器,把上面的例子敲一遍。手打代码和复制粘贴的体验完全不同 💪