第3章:Python基础知识——从零开始搭积木

说实话,每次带新人入门Python,我都会先讲这一章。为什么?因为这是地基。地基没打好,后面写再漂亮的代码也容易塌。我自己刚学Python那会儿,就吃过变量命名的亏——用了关键字当变量名,结果程序直接报错,找了半天才发现问题。嗯,咱们今天就把这些基础打扎实。

3.1 注释——给代码写说明书

注释这东西,说白了就是写给人类看的,不是给机器看的。Python解释器会直接忽略它。我个人的习惯是:写代码前先写注释,理清思路再动手。

Python里注释有两种写法:

  • 单行注释:用 # 开头,后面跟注释内容
  • 多行注释:用三个单引号 ''' 或三个双引号 """ 包裹
# 这是一个单行注释
print("Hello, World!")  # 也可以写在代码后面

'''
这是一个多行注释
可以写好几行
适合写函数说明
"""

我的小技巧:注释不是越多越好。好的代码本身就像注释一样清晰。我一般只在「为什么这么做」的地方加注释,而不是「做了什么」——因为代码自己会告诉你它做了什么。

3.2 变量与数据类型——给数据贴标签

变量是什么?你可以把它想象成一个带标签的盒子。你把数据放进去,贴上名字,以后想用的时候喊这个名字就行。

Python里不需要提前声明类型,直接赋值就完事了。这跟C语言、Java不一样,刚开始可能会不习惯,但用久了你会爱上这种自由。

name = "小明"      # 字符串
age = 25           # 整数
height = 1.75      # 浮点数
is_student = True  # 布尔值

Python常见的数据类型有这些:

类型名称例子
int整数10, -5, 0
float浮点数3.14, -0.5, 1.0
str字符串"你好", 'Python'
bool布尔值True, False
list列表[1, 2, 3]
dict字典{"name": "小明"}

我曾经踩过的坑:Python里变量名区分大小写!nameName 是两个完全不同的变量。有一次我写了个大项目,变量名混用大小写,调试到凌晨三点才找到bug。从那以后,我强制自己全部用小写加下划线。

3.3 标识符与关键字——起名字的规矩

标识符就是你给变量、函数、类起的名字。Python对名字有要求:

  • 只能包含字母、数字、下划线
  • 不能以数字开头
  • 不能是Python的关键字
  • 区分大小写

那什么是关键字?就是Python自己保留的词,你不能拿来当变量名。比如 ifforwhileclass 这些。

# 合法的标识符
my_name = "张三"
age_2024 = 30
_temp = 36.5

# 非法的标识符
# 123abc = "错误"   # 数字开头
# my-name = "错误"  # 不能有连字符
# if = "错误"       # 关键字

我建议:变量名要见名知意。别用 abc 这种,三个月后你自己都看不懂。用 user_nametotal_price 这种,读代码就像读文章。

3.4 输入与输出——和程序对话

程序不是关起门来自己玩的,它需要跟人交互。输入函数 input() 和输出函数 print() 就是干这个的。

name = input("请输入你的名字:")
print("你好," + name + "!")

这里有个坑要注意:input() 返回的永远是字符串!哪怕你输入的是数字,它也是字符串。我刚开始学的时候就被这个坑过——想算加法,结果变成了字符串拼接。

age = input("请输入年龄:")
print(age + 1)  # 报错!字符串不能和数字相加

那怎么办?用类型转换。

3.5 类型转换——让数据变个样

Python提供了几个内置函数来做类型转换:

  • int() — 转成整数
  • float() — 转成浮点数
  • str() — 转成字符串
  • bool() — 转成布尔值
age_str = "25"
age_int = int(age_str)  # 字符串"25"变成整数25
print(age_int + 1)      # 输出26,没问题了

price = "19.99"
price_float = float(price)  # 转成浮点数
print(price_float * 2)      # 39.98

注意:不是所有字符串都能转成数字。int("abc") 会报错。所以做类型转换前,最好先确认数据格式对不对。我在做数据清洗时经常遇到这种问题——用户输入了乱七八糟的内容,程序直接崩了。

3.6 运算符——让数据动起来

运算符就是用来操作数据的符号。Python的运算符挺丰富的,咱们挑重点说。

算术运算符:加减乘除这些

a = 10
b = 3
print(a + b)   # 13
print(a - b)   # 7
print(a * b)   # 30
print(a / b)   # 3.333...  注意!除法结果是浮点数
print(a // b)  # 3  整除,取整数部分
print(a % b)   # 1  取余数
print(a ** b)  # 1000  10的3次方

比较运算符:结果永远是布尔值

print(5 > 3)    # True
print(5 == 3)   # False  注意是两个等号!
print(5 != 3)   # True

逻辑运算符:and、or、not

age = 20
has_id = True
print(age >= 18 and has_id)  # True  两个条件都满足
print(age < 18 or has_id)    # True  至少一个满足
print(not has_id)            # False  取反

我常用的技巧:写条件判断时,把常量放左边。比如 if 18 <= age: 而不是 if age >= 18:。为什么?因为如果你手滑写成 if age = 18:(少写一个等号),Python不会报错,但逻辑就错了。常量放左边的话,if 18 = age: 会直接报语法错误,帮你提前发现bug。

3.7 知识体系总览

下面这张图把本章的知识点串起来了。你看,所有内容都围绕着「数据」这个核心——怎么存(变量)、怎么描述(数据类型)、怎么命名(标识符)、怎么交互(输入输出)、怎么运算(运算符)、怎么转换(类型转换)。

Python基础知识 注释 变量与数据类型 标识符与关键字 输入与输出 运算符 类型转换 # 单行注释 ''' 多行注释 ''' int, float, str, bool list, dict, tuple 字母、数字、下划线 不能以数字开头 input() 接收输入 print() 输出结果 算术、比较、逻辑 赋值、成员、身份 int() float() str() bool() 显式转换

好了,这一章的内容就这些。别看知识点多,其实核心就一句话:数据怎么存、怎么取、怎么算、怎么转。把这些搞明白了,后面写代码就会顺手很多。


专注资料整理