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
相关推荐
学习和思考1 小时前
非自动化专业如何自学PLC?我的6个月学习路线图
笔记·学习·自动化·学习方法
努力搬砖的咸鱼1 小时前
AI Agent测试全景图:它到底改变了什么
人工智能·python·ai·集成测试·pytest·agent·ai编程
拾陆楼1 小时前
PT: DMSA辅助调tree报告前后级余量脚本
后端·学习
huainingning2 小时前
RJ DHCPV6 无状态配置成功案例
网络·智能路由器
张小殊.2 小时前
LoongForge TAOT 训练方案,解决MoE EP不均衡问题
人工智能·python·深度学习·机器学习·ai
玫幽倩2 小时前
2026黄河流域公安院校-电子物证单项赛(程序逆向分析+服务器取证)
运维·服务器·python·电子取证·逆向·程序分析·服务器取证
恒拓高科WorkPlus2 小时前
从“可选项”到“必选项”——私有化部署即时通讯如何重塑企业协作新底座
大数据·网络·人工智能
北斗落凡尘2 小时前
LangGraph 入门实战(4)
python·langchain
liwulin05062 小时前
【PYTHON】使用Selenium + ChromeDriver以及XPATH语法
开发语言·python·selenium