python基础语法学习: 变量, 输入输出, 运算符

注释

python中注释为 #

python 复制代码
print("hello")  #这是注释

字面量

Python 常见的基础数据类型

标准名称 描述 说明
int 整数 数字类型,存放整数,如:10、-5
float 浮点数 数字类型,存放小数,如:8.5、3.14、1.0、-3.5
str 字符串 用引号引起来的都是字符串,如:"Python"
bool 布尔 布尔类型,描述真和假,如:True、False
NoneType 空值 表示空或无值,仅包含一个值 None

布尔类型本质是数字类型, 在涉及到数学运算的时候, 会自动将 True 转为 1 , 将 Flase 转为 0

字符串 str "hello world"

空值 (NoneType) None

数据容器 数组, 元组, 集合, 字典

python 复制代码
print(True) # True
print(3.14) # 3.14
print(True + 1) # 2 
print(False)    # False
print(None) # None 

变量

定义格式

python 复制代码
变量名 = 变量的值

python是动态类型的语言, 在程序运行的时候才进行类型检查, 变量的类型可以在程序运行的过程中改变 (一个变量可以接受不同类型的变量)

python 复制代码
num = 342.3 
print(num)

但是在项目开发中, 一般推荐变量只存储一种类型的值

可以一次性定义多个变量

python 复制代码
a, b = 45, "hello"
print(a) # 45
print(b) # hello

标识符

  • 标识符 是程序员在代码中为变量、函数、类等元素所起的名字。
  • 命名规则(规定):
    1. 只能包含字母(a-z,A-Z)、数字(0-9)、下划线(_)
    2. 不能以数字开头
    3. 不能使用关键字:True、False、None、and、or、if、else、elif、for、while 等
    4. 严格区分大小写,比如:age,Age,AGE 是三个变量

查看数据类型

通过type () 语句来得到数据的类型

py 复制代码
type (要查看类型的数据)
python 复制代码
a = True  
b = 4
print(type(a)) # 输出: <class 'bool'>
print(type(b)) # 输出: <class 'int'>

变量本身是没有类型的, type (变量) 输出的类型是变量中存储的数据的类型

python 复制代码
print(type(None)) # <class 'NoneType'>

通过isinstance() 检查数据是否属于指定的类型, 返回的是一个bool 值, 具体语法为: isinstance(数据, 类型)

python 复制代码
a = 5
print(a) # 5
b = isinstance(a, int) 
print(b) # True

字符串

定义字符串

python 复制代码
s1 = "hello" # 双引号定义

s2 = 'world' # 单引号定义

s3 = """	# 三引号定义
    hello 
    dear girl
""" 

print(s1, s2, s3)

输出:

python 复制代码
hello world 
    hello 
    dear girl

三引号定义的字符串可以换行

单引号字符串和双引号字符串的区别

字符串内部包含单引号:用双引号包裹字符串

python 复制代码
# 推荐写法(无需转义)
str5 = 'He said: "Python is easy"'
# 等价写法(需要转义双引号)
str5 = "He said: \"Python is easy\""
print(str5 == str6)  # 输出 True

字符串内部包含双引号:用单引号包裹字符串

python 复制代码
# 推荐写法(无需转义)
str5 = 'He said: "Python is easy"'
# 等价写法(需要转义双引号)
str5 = "He said: \"Python is easy\""
print(str5 == str6)  # 输出 True

字符串拼接

要将多个字符串拼接, 可以直接使用 ( + ) 进行拼接

python 复制代码
a = "hello" "world" 
print(a)		# helloworld
b = "hello" + "xinyan" 
print(b) 		# helloxinyan
c = "hello" 
d = "world" 
print(c + d) 	# helloworld

注意: + 号可以用来拼接两个字符串, 但是无法将非字符串与字符串进行拼接(非字符串类型需要转换为字符串类型)

str() 可以将非字符串转换为字符串类型

python 复制代码
name = "John" 
age = 18 
print("I am " + name, "today age is " + str(age)) 
# 输出: I am John today age is 18 


# 不转换也可以一起输出: 
name = "John" 
age = 18 
print("I am ", name, "today age is " , age) 
# 输出: I am  John today age is  18

字符串格式化

通过 % (占位符) 的形式完成字符串和变量的快速拼接, 其中 ( % ) 表示要占位, s 表示将变量转为字符串放入占位的位置

如果有多个变量, 则需要用 ( ) 将变量括起来

python 复制代码
name = "John" 
age = 18 
print("I am %s, today age is %s" %(name, age))

注意: 在变量前面的 % 前面不可以写逗号 ( , )

也可以通过 f"内容{变量/表达式}" 的形式来完成快速格式化
python 复制代码
 name = "John" 
age = 18 
print(f"I am {name}, today age is {age}")
# I am John, today age is 18

输入和输出 (input, print)

input : 获取键盘输入的数据, s = input(提示信息)

print: 将数据输出到控制台, print(数据)

python 复制代码
name = input("请输入姓名: "); 
print(f"欢迎你", name) 
print(type(name)) 	# <class 'str'>

print默认是以 "\n"结束的, 如果不想再输出结束时换行, 可以指定以空字符结尾

print("*", end = "")

这样就不会自动换行了

无论键盘输入的是什么类型的数据, 获取到的数据永远都是 字符串类型

**将其它类型转换为int类型: int() **

python 复制代码
total = 1000 
password = input("请输入密码: ") 
print("密码正确",  password) 
print(type(password))  
num = input("请输入取款金额: ")
print(f"取款后银行余额为: {total - int(num)}")
  1. 其他类型转为 int 类型:int (...)
  2. 其他类型转为 str 类型:str (...)
  3. 其他类型转为 float 类型:float (...)
  4. 其他类型转为 bool 类型:bool (...)

字符串的格式化

我们可以使用辅助符号 "m.n" 来控制数据的宽度和精度:

m:控制宽度,要求是数字(很少使用);设置的宽度小于数字自身时,不生效。

.n:控制小数点精度,要求是数字,会对小数进行四舍五入。

示例:

%5d:表示将整数的宽度控制在 5 位。例如数字 11 被设置为 5d,就会变成:空格空格空格11(用三个空格补足宽度)。

%5.2f:表示将宽度控制为 5,将小数点精度设置为 2。

小数点和小数部分也计入宽度计算。例如,对 11.345 设置 %7.2f 后,结果是:空格空格11.35(2 个空格补足宽度,小数部分保留 2 位并四舍五入为 .35)。

%.2f:表示不限制宽度,只设置小数点精度为 2。例如 11.345 设置 %.2f 后,结果是 11.35。

以上格式符属于 旧式字符串格式化(% 格式化),适用于 print("%5d" % value) 等语法;现代 Python 更推荐使用 f-string 或 .format() 方法

python 复制代码
pi = 3.1415926
num = 42

# 小数精度(四舍五入)
print(f"{pi:.2f}")        # → 3.14

# 宽度 + 对齐(默认右对齐数字,左对齐字符串)
print(f"{num:>6d}")       # → '    42' (右对齐,宽度6)
print(f"{num:<6d}")       # → '42    ' (左对齐)
print(f"{num:^6d}")       # → '  42  ' (居中对齐)

# 填充字符(默认空格,可自定义)
print(f"{num:*^8d}")      # → '***42***'

# 千分位分隔符
print(f"{1234567:,}")     # → 1,234,567
print(f"{1234567.89:,.2f}") # → 1,234,567.89

运算符

算数运算符

运算符 描述 举例说明
+ 加法 1 + 5:1 加上 5
- 减法 8 - 3:8 减 3
* 乘法 3 * 8:3 乘以 8
/ 除法 10 / 5:10 除以 5,除法结果是小数
// 整除 10 // 3:10 整除 3,整除结果为整数
% 取余 / 求模 10 % 3:10 模于 3,结果为 1(10 除 3 取余数)
** 幂指数 10 ** 3:10 的 3 次方

由于计算机底层是基于二进制进行数据的存储与处理, 二进制是无法准确的表示所有的小数, 因此涉及到浮点数的运算, 可能会损失精度

赋值运算符

运算符 描述 实例
= 赋值运算符 把 = 号右边的结果赋值给左边的变量,如 num = 1+2,结果 num 的值为 3
+= 加法赋值运算符 num += 2 等效于 num = num + 2
-= 减法赋值运算符 num -= 2 等效于 num = num - 2
*= 乘法赋值运算符 num *= 2 等效于 num = num * 2
/= 除法赋值运算符 num /= 2 等效于 num = num / 2
%= 取模赋值运算符 num %= 2 等效于 num = num % 2
//= 取整除赋值运算符 num //= 2 等效于 num = num // 2
**= 幂赋值运算符 num **= 2 等效于 num = num ** 2

逻辑运算符

逻辑运算符用于连接多个条件(布尔)表达式,返回最终布尔结果。

运算符 描述 实例说明
and 逻辑与 (并且) 同时成立才符合条件(左右两边都为 True,结果才为 True)
or 逻辑或 (或者) 只要有一个符合要求即可(只要左右两边有一个为 True,结果就为 True)
not 逻辑非 (取反) 取反操作,True 变为 False,False 变为 True
相关推荐
用户7783366132117 小时前
用 React Hook 封装搜索数据:useSerp 的防抖、缓存与错误处理
python·api
65岁退休Coder11 小时前
LangGraph v1.2.9 节点容错策略 & 流式输出 & 持久化记忆管理
后端·python·langchain
ikun_文13 小时前
Django框架路由Router的使用
python·pycharm·django
IvanCodes13 小时前
Python 基础语法(二):字符串与常用操作
python
昭昭日月明13 小时前
LangChain 生态:从链到代理,开发者需要掌握的三大核心
python·langchain·agent
Csvn14 小时前
🐍 Day 8:面向对象编程
后端·python
程序员天天困14 小时前
向量检索不准怎么办:混合检索与 Rerank 重排序召回优化实战
后端·python·ai编程
alphaTao15 小时前
LeetCode 每日一题 2026/8/24-2026/8/30
python·算法·leetcode
草莓熊Lotso15 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
苏灿烤鱼15 小时前
当 AI Agent 遇见真实科学环境:深度拆解 Scientific Agent Skills,把"聊天机器人"变成"AI 科学家"
python·开源·agent