一、Python 基础知识:从零开始搭积木
各位同学,欢迎来到 Python 的世界。今天咱们要聊的,是编程最底层的那些东西——说白了,就是 Python 这门语言的「砖块」和「水泥」。
我个人习惯把这一章叫作「地基课」。地基打不牢,后面盖高楼肯定要晃。别担心,内容不难,但很重要。
1. 注释:写给未来的自己看
注释这东西,说白了就是代码里的「便签纸」。Python 解释器看到注释,直接跳过,不执行。
为什么要写注释?我刚开始写代码时,觉得注释浪费时间。直到三个月后,我打开自己写的脚本,愣是看了半小时没看懂……嗯,从那以后,我养成了写注释的习惯。
Python 里注释有两种写法:
# 这是单行注释,井号后面都是注释内容
print("Hello, World!") # 也可以写在代码后面
"""
这是多行注释
用三个引号包起来
可以写好几行说明
"""
2. 变量:给数据贴个标签
变量是什么?你想想看,就像你给一个盒子贴了个标签,标签上写着「我的零食」。以后你只要喊「我的零食」,就知道去拿那个盒子。
Python 里给变量赋值特别简单:
name = "小明" # 字符串
age = 18 # 整数
height = 1.75 # 浮点数
is_student = True # 布尔值
我在项目中遇到过最坑的事:有人把变量名写成 l(小写 L)和 O(大写 O)。结果代码里 l 和 1 傻傻分不清,排查了半天。所以,变量名别偷懒。
3. 数据类型:Python 认识哪些东西?
Python 里常用的数据类型,我列个表给你看:
| 类型 | 名称 | 例子 |
|---|---|---|
| int | 整数 | 10, -5, 0 |
| float | 浮点数(小数) | 3.14, -0.5, 2.0 |
| str | 字符串 | "你好", 'Python' |
| bool | 布尔值 | True, False |
| list | 列表 | [1, 2, 3] |
| dict | 字典 | {"name": "小明"} |
Python 有个特别方便的函数叫 type(),可以查看变量是什么类型:
print(type(10)) # <class 'int'>
print(type("hello")) # <class 'str'>
4. 标识符和关键字:起名字的规矩
标识符就是你给变量、函数起的名字。Python 起名字有规矩:
- 只能包含字母、数字、下划线
- 不能以数字开头
- 不能是 Python 的关键字
- 区分大小写(name 和 Name 是两个不同的变量)
关键字是 Python 自己保留的词,比如 if、for、while。你不能拿它们当变量名。我曾经见过有人写 class = "一班",结果报错了——class 是关键字啊!
import keyword; print(keyword.kwlist) 就能看到全部。
5. 输入和输出:和程序对话
输出用 print(),输入用 input()。这两个函数,你以后天天用。
name = input("请输入你的名字:")
print("你好," + name + "!")
这里有个坑:input() 返回的永远是字符串。哪怕你输入的是数字 18,它也是字符串 "18"。我刚开始学的时候,直接拿 input 的结果做加法,结果 "5" + "3" 变成了 "53"……
6. 运算符:让数据动起来
运算符分几类,我挑重点说:
算术运算符:
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
逻辑运算符:
print(True and False) # False
print(True or False) # True
print(not True) # False
== 写成了 =。结果程序不报错,但逻辑全错了。记住:一个等号是赋值,两个等号才是判断相等。
7. 类型转换:把数据变成想要的样子
有时候你需要把字符串转成数字,或者把数字转成字符串。Python 提供了几个转换函数:
# 字符串转整数
num_str = "123"
num_int = int(num_str)
print(num_int + 1) # 124
# 整数转字符串
age = 18
age_str = str(age)
print("我今年" + age_str + "岁") # 字符串拼接
# 浮点数转整数(会丢掉小数部分)
print(int(3.14)) # 3
为什么需要类型转换?你想想看,用户输入的都是字符串,但你要做数学计算,就得转成数字。反过来,你要拼接字符串,数字就得转成字符串。
int("abc") 会报错。所以转换前最好确认一下数据格式。
知识体系总览
下面这张图,把今天讲的内容串起来了:
好了,这一章的内容就这些。记住:注释是写给自己的,变量名要起好,类型转换要小心。把这些基础打牢,后面的路就好走了。