3、Python基础知识:注释、变量以及数据类型、标识符和关键字、输入函数、输出函数、运算符、程序类型转换

各位同学,欢迎来到第三章。说实话,这一章是Python的“地基”。地基打不牢,后面盖楼肯定歪。我个人习惯是,学任何语言先把这些基础概念嚼碎了再往下走。今天咱们就把注释、变量、数据类型、运算符这些玩意儿一次性说透。

3.1 注释:写给未来的自己看

注释这东西,说白了就是代码里的“便签纸”。代码是写给机器看的,注释是写给人看的——包括三天后的你自己。

核心要点:注释不会被Python解释器执行,纯粹为了帮助理解代码逻辑。

Python里注释分两种:

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

'''
这是多行注释
可以写好几行说明
比如解释一个复杂的算法思路
"""

这也是多行注释
用双引号效果一样
'''

我的小技巧:我在项目中遇到过最坑的事——写了代码没加注释,三个月后回来看,自己都看不懂自己写的啥。所以,注释不是给别人看的,是给未来的自己看的。

3.2 变量:给数据起个名字

变量是什么?你想想看,就是给数据贴个标签。比如你有个数字 18,你给它起个名字叫 age,以后用 age 就代表 18

Python里定义变量很简单,不需要像C语言那样先声明类型。直接写:

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

嗯,这里要注意:Python是动态类型语言。什么意思?就是变量的类型可以随时变。比如:

x = 10      # 现在是整数
x = "hello" # 现在变成字符串了
print(x)    # 输出 hello

避坑指南:我曾经在项目里犯过这种错——变量名拼写错误,导致程序跑出奇怪的结果。比如 user_name 写成了 username,Python会把它当成两个不同的变量。所以命名一定要统一,别偷懒。

3.3 数据类型:Python内置的几种基本类型

Python里常用的数据类型就这几种,我列个表给你看:

类型 名称 示例
int 整数 10, -5, 0
float 浮点数(小数) 3.14, -0.5, 1.0
str 字符串 "你好", 'Python'
bool 布尔值 True, False
NoneType 空值 None

你可以用 type() 函数查看一个变量的类型:

print(type(10))       # <class 'int'>
print(type(3.14))     # <class 'float'>
print(type("你好"))    # <class 'str'>
print(type(True))     # <class 'bool'>

3.4 标识符和关键字:起名字的规矩

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

  • 只能包含字母、数字、下划线
  • 不能以数字开头
  • 不能是Python的关键字
  • 区分大小写(Namename 是两个变量)

关键字是Python已经“占用了”的词,你不能拿它们当变量名。比如 ifforwhileclass 这些。想知道全部关键字?用这个:

import keyword
print(keyword.kwlist)
# 输出:['False', 'None', 'True', 'and', 'as', 'assert', ...]

我的命名习惯:变量名用下划线命名法,比如 user_agetotal_count。类名用驼峰命名法,比如 UserInfo。团队协作时统一风格很重要,不然代码看起来像大杂烩。

3.5 输入函数:让用户说话

input() 函数用来获取用户输入。注意:它返回的永远是字符串!

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

age = input("请输入你的年龄:")
# 注意!age 是字符串,不能直接做数学运算
print(type(age))  # <class 'str'>

为什么会这样?因为用户从键盘敲进来的东西,Python默认都当成文本处理。如果你想要数字,得自己转换。

3.6 输出函数:让Python说话

print() 函数大家已经见过了。它有几个常用技巧:

# 多个值一起输出,默认用空格分隔
print("姓名:", "张三", "年龄:", 25)

# 用 sep 参数指定分隔符
print("2024", "01", "15", sep="-")  # 输出:2024-01-15

# 用 end 参数指定结尾字符,默认是换行
print("Hello", end=" ")
print("World")  # 输出:Hello World

3.7 运算符:做计算的工具

运算符分几大类,我挑重点说:

算术运算符

运算符 含义 示例
+ 10 + 3 = 13
- 10 - 3 = 7
* 10 * 3 = 30
/ 除(结果是浮点数) 10 / 3 = 3.333...
// 整除(取整数部分) 10 // 3 = 3
% 取余 10 % 3 = 1
** 幂运算 2 ** 3 = 8

比较运算符

结果永远是布尔值:TrueFalse

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

逻辑运算符

print(True and False)  # False
print(True or False)   # True
print(not True)        # False

我曾经踩过的坑:== 比较浮点数时要小心!比如 0.1 + 0.2 == 0.3 结果是 False。因为浮点数在计算机里存储有精度误差。正确的做法是判断它们的差值是否小于一个很小的数,比如 abs(0.1 + 0.2 - 0.3) < 1e-9

3.8 类型转换:让数据变个样

有时候你需要把一种类型转成另一种。比如用户输入的是字符串,你想当数字用。Python提供了几个转换函数:

# 字符串转整数
num_str = "123"
num_int = int(num_str)
print(num_int + 1)  # 124

# 字符串转浮点数
pi_str = "3.14"
pi_float = float(pi_str)

# 数字转字符串
age = 25
age_str = str(age)
print("我今年" + age_str + "岁")  # 字符串拼接

# 转布尔值
print(bool(0))      # False
print(bool(1))      # True
print(bool(""))     # False
print(bool("abc"))  # True

我的经验:做Web开发时,经常要从表单获取用户输入。用户填的年龄是字符串,存数据库需要整数。这时候 int() 就派上用场了。但要注意——如果用户填了"abc",int("abc") 会报错。所以实际项目中一定要加异常处理,这个后面会讲到。

好了,这一章的内容就这些。说白了就是:注释帮你看懂代码,变量帮你存数据,运算符帮你做计算,类型转换帮你处理不同格式的数据。把这些基础打扎实了,后面学函数、类、文件操作才会轻松。下一章咱们聊列表和字典,那才是Python真正好用的地方。