核心语法
数据存储与运算
字面量与变量
什么是字面量(literal)
字面量就是直接写在代码里的具体值

布尔类型本质是数字类型,在涉及到数学运算时,会自动将True转换为1,False为0
字面量的特点:
- 不需要先定义就能使用
- 写出来是什么值,运行时就是什么值
什么是变量(variable)
变量:程序中用来存储单个数据容器。可以理解为给一个值起名字,便于重复使用或更新。
python
age = 18
name = "Edgar"- name,age变量名 。18,Edgar是变量值
=在这里叫赋值:把右边的值放到左边这个变量名对应的位置- Python 变量不需要声明类型,解释器会根据赋的值推断
变量命名规则(非常重要)
- 只能由:字母、数字、下划线
_组成 - 不能以数字开头:
1a❌ - 不能是关键字:
class、for、if等❌
变量命名规范
- 建议使用 小写 + 下划线(snake_case):
user_name、total_price - 见名知意:name、age、color 避免:
a1、tmp(除非临时变量)
常见赋值写法(不懂可以先了解)
(1)同时赋值
python
x, y = 1, 2(2)交换变量
python
a, b = b, a(3)链式赋值(慎用,容易读错)
python
a = b = 0(4)增量赋值
python
count = 0
count += 1
count -= 1
count *= 2
count /= 2变量与类型:动态类型 + 强类型
- 动态类型:变量本身不固定类型,值决定类型
- 强类型:不同类型之间不会自动随意转换
python
x = 1
x = "one" # 合法:x 现在变成 str
1 + "1" # 报错:TypeError练习
🤔️ 现有三个变量,分别为:a=100,b = 200,c = 300,现需要将这三个变量值进行交换,将a,b,c的值分别赋值给c,a,b,并将其输出到控制台。
python
a = 100
b = 200
c = 300
temp = a
a = b
b = c
c = temp
print(a)
print(b)
print(c)常见数据类型
Python中常见的基础数据类型

可通过type( )语句来得到数据的类型,具体语法为:type(要查看类型的数据源)
python
# type(...)
print(type("hello") #str
print(type(10) #int
print(type(3.14) #float通过isinstance( )检查数据是否属于指定的类型,返回的是一个bool值
python
num = 5.0
print(num)
print(isinstance(num,int)) #False字符串

字符串拼接
python
KFC = "疯狂星期四" + "吃肯德基"
print(KFC)
date = "疯狂星期四"
eat = "吃"
kfc = "肯德基"
print(date + eat + kfc)字符串格式化

f-string(推荐格式化方式)
python
name = "Edgar"
age = 18
print(f"{name} is {age} years old")字符串的一下用法(先了解)
字符串是字符的序列,支持索引、切片和大量方法。
python
s = "Python"
print(s[0]) # P
print(s[-1]) # n
print(s[1:4]) # yth常用操作:
- 拼接:
"a" + "b" - 重复:
"ha" * 3 - 成员判断:
"Py" in "Python" - 长度:
len(s)
常用方法:
python
text = " hello world "
print(text.strip()) # 移除字符串首尾的空白字符(空格、制表符等)
# 输出: "hello world"
print(text.upper()) # 将所有字母转换为大写(原字符串中的空格保留)
# 输出: " HELLO WORLD "
print(text.replace("world", "python")) # 将子串 "world" 替换为 "python"
# 输出: " hello python "
print("a,b,c".split(",")) # 以逗号为分隔符拆分字符串,返回一个列表
# 输出: ['a', 'b', 'c']空值:None
- 表示“没有值”或“缺失”
- 常用作默认值或占位
python
result = None输入与输出
1. 输入:input()
input() 会把用户输入读成 字符串 str。
python
name = input("请输入名字:")
print(name)输入数字时要手动转换
python
age = int(input("请输入年龄:")) #把字符串类型转为int类型
print(age + 1)一次输入多个值
python
a, b = input("输入两个数,用空格分隔:").split() #显示提示信息,等待用户输入。用户输入如 "10 20",返回字符串 "10 20"。默认按空白(空格、制表符等)拆分字符串,返回列表 ["10", "20"]。通过解包将列表的两个元素分别赋值给变量 a 和 b(此时它们仍是字符串)。
a = int(a)
b = int(b) #将两个字符串转换为整数类型。
print(a + b)2. 输出:print()
python
print("hello")
print(1, 2, 3)常用参数:
sep:多个参数之间的分隔符end:结尾默认换行,可改成不换行
python
print(1, 2, 3, sep="-") # 1-2-3
print("hi", end="")
print("there") # hithere3. 常见错误与排查
ValueError:类型转换失败(输入了非数字)EOFError:没有读到输入(某些运行环境不提供交互输入)
建议做法:先 print() 看一下读到了什么,再转换。
练习
🤔️需求:根据用户输入的两个数字,计算两个数之和,并将其输出到控制台。
python
num1 = int(input("请输入第一个数字: "))
num2 = int(input("请输入第二个数字: "))
print(f"{num1} + {num2} = {num1 + num2}")运算符
算术运算符
+加-减*乘/除(结果为 float)//整除%取余**幂
python
print(7 / 2) # 3.5
print(7 // 2) # 3
print(7 % 2) # 1
print(2 ** 3) # 8比较运算符(返回 bool)
==等于!=不等于>、<、>=、<=
python
print(3 > 2) # True链式比较
python
x = 5
print(1 < x < 10) # True逻辑运算符
and:都真才真or:有真即真not:取反
python
age = 18
is_student = True
print(age >= 18 and is_student)赋值运算符
=+=、-=、*=、/=、//=、%=、**=
成员运算符
innot in
python
print("a" in "cat")
print(3 in [1, 2, 3])身份运算符(对象是否同一个)
isis not
python
a = [1, 2]
b = [1, 2]
print(a == b) # True:值相等
print(a is b) # False:不是同一个对象位运算符(了解即可)
&、|、^、~、<<、>>
运算符优先级(常用记忆法)
从高到低(常用部分):
- 括号
() - 幂
** - 乘除取余
* / // % - 加减
+ - - 比较
== != > < >= <= notandor
不确定时:加括号,可读性更好也更安全。
