3、Python基础知识:注释、变量以及数据类型、标识符和关键字、输入函数、输出函数、运算符、程序类型转换
各位同学,咱们今天聊点实在的。Python 基础语法这块,说白了就是写代码的「规矩」。我见过太多新手,一上来就急着写逻辑,结果变量名乱起、类型搞混、缩进不对,最后 debug 到崩溃。嗯,咱们今天就把这些规矩捋清楚。
3.1 注释:代码里的「便签」
注释这东西,不是写给机器看的,是写给人看的。我自己的习惯是:复杂逻辑必写注释,简单代码不写废话。
Python 里注释有两种:
- 单行注释:用
#开头,整行都失效 - 多行注释:用三个单引号
'''或三个双引号"""包裹
# 这是一个单行注释
print("Hello, World!") # 行尾也可以加注释
'''
这是一个多行注释
可以写好几行
不会被执行
"""
3.2 变量:给数据起个名字
变量就是给数据贴个标签。你想想看,如果没有变量,你每次用数据都得写死值,那代码得多僵硬?
Python 里变量不需要提前声明类型,直接赋值就行:
name = "张三"
age = 25
height = 1.75
is_student = True
这里有个坑,我刚开始学的时候踩过:变量必须先赋值再使用。如果你写 print(x) 但前面没定义 x,Python 会直接报错 NameError。
3.3 数据类型:Python 的「食材分类」
Python 里常用的数据类型,我整理了一张表,你一看就明白:
| 类型 | 名称 | 示例 | 说明 |
|---|---|---|---|
int |
整数 | 42, -5 |
没有小数点的数字 |
float |
浮点数 | 3.14, -0.001 |
带小数点的数字 |
str |
字符串 | "你好", 'Python' |
用引号包裹的文本 |
bool |
布尔值 | True, False |
只有两个值,注意首字母大写 |
NoneType |
空值 | None |
表示「没有值」 |
你可以用 type() 函数查看变量的类型:
print(type(42)) # <class 'int'>
print(type("Hello")) # <class 'str'>
x = 10 之后,你写 x = "hello" 完全没问题。但这也容易引发 bug,我在项目里吃过亏——变量类型变了,后面的代码却没适配。
3.4 标识符和关键字:起名字的规矩
标识符就是你给变量、函数、类起的名字。规矩不多,但必须遵守:
- 只能包含字母、数字、下划线
- 不能以数字开头
- 不能是 Python 的关键字
- 区分大小写(
name和Name是两个变量)
关键字就是 Python 自己保留的词,比如 if、for、while、class、def 等等。你可以用 import keyword; print(keyword.kwlist) 查看完整列表。
我个人习惯用下划线命名法:变量名全小写,单词之间用下划线隔开,比如 user_name、total_count。这样读起来一目了然。
3.5 输入函数:让用户说话
input() 函数用来获取用户输入。注意:它返回的一定是字符串。
name = input("请输入你的名字:")
print("你好," + name)
如果你需要数字,记得做类型转换:
age = int(input("请输入你的年龄:")) # 把字符串转成整数
input() 返回的是字符串,必须用 int() 或 float() 转换。
3.6 输出函数:让代码说话
print() 是 Python 里最常用的输出函数。它有几个实用参数:
sep:指定多个值之间的分隔符,默认是空格end:指定结尾字符,默认是换行\n
print("Hello", "World", sep="-") # 输出:Hello-World
print("第一行", end="") # 不换行
print("还是第一行") # 输出:第一行还是第一行
格式化输出我常用 f-string,简洁又直观:
name = "李四"
age = 30
print(f"我叫{name},今年{age}岁。") # 输出:我叫李四,今年30岁。
3.7 运算符:代码里的「数学课」
运算符分几类,我按使用频率给你排个序:
算术运算符
| 运算符 | 含义 | 示例 | 结果 |
|---|---|---|---|
+ |
加 | 5 + 3 |
8 |
- |
减 | 5 - 3 |
2 |
* |
乘 | 5 * 3 |
15 |
/ |
除 | 5 / 2 |
2.5 |
// |
整除 | 5 // 2 |
2 |
% |
取余 | 5 % 2 |
1 |
** |
幂运算 | 2 ** 3 |
8 |
比较运算符
返回布尔值 True 或 False:
print(5 > 3) # True
print(5 == 3) # False(注意是两个等号)
print(5 != 3) # True
逻辑运算符
and、or、not 三个,用来组合条件:
age = 20
print(age > 18 and age < 60) # True(既成年又没退休)
print(not age > 18) # False
3.8 类型转换:让数据「变形」
类型转换分两种:隐式转换和显式转换。
隐式转换是 Python 自动做的。比如整数和浮点数做运算,结果会自动变成浮点数:
result = 5 + 3.14 # result 是 8.14(float 类型)
显式转换是你主动用函数转:
int(x):转整数(会截断小数,不是四舍五入)float(x):转浮点数str(x):转字符串bool(x):转布尔值(0、空字符串、None 转成 False,其他都是 True)
print(int(3.99)) # 3(不是 4!)
print(float("3.14")) # 3.14
print(str(100)) # "100"
print(bool(0)) # False
print(bool("")) # False
print(bool("abc")) # True
int("hello") 会报 ValueError。我在处理用户输入时,都会用 try...except 包一层,防止程序崩溃。
知识体系总览
下面这张图,把本章的知识点串起来了。你可以把它当作「Python 基础语法地图」:
本章核心要点:
- 注释是写给人的,不是写给机器的
- 变量先赋值再使用,类型可以变但别乱变
- 标识符要见名知意,别用关键字
input()返回字符串,需要数字记得转- 运算符要分清算术、比较、逻辑三类
- 类型转换分隐式和显式,显式转换要小心无效数据