Python变量与数值类型

变量

用于存储数据的标识符,本质是内存地址的引用。

定义与赋值

  • 动态类型:Python无需声明变量类型,直接通过赋值(=)运算符,创建变量,解释器会自动推断数据类型
  • 多重赋值:使用等于号进行赋值。可以一行定义多个变量或多个变量赋相同的值。
python 复制代码
x=1,t=2,c=3
x=y=z=4

命名规则与规范

规则

  1. 只包含数字、字母、下划线。且不能以数字开头
  2. 不能使用Python关键字
  3. 区分大小写

规范

  1. 见名知意,避免使用单个字符
  2. 推荐使用小写字母加下划线的方式命名变量

注意

  1. 变量的本质是内存地址的引用而非数据容器如:
python 复制代码
a=10 #变量a指向存储100的内存地址
b=a	# 变量b与变量a指向同一个地址
  1. 引用未赋值的变量会引发报错(NameError)

整型与浮点型

整数(int)

表示没有小数点的数字,支持任意大小的数字(仅受内存的限制)。运算结果保持整型数据(除法会自动转换为浮点型数据)

浮点数(float)

标识带小数点的数字,采用IEEE 75双精度标准,存在精度限制,可以使用科学计数法(用e表示)如:"1.2e3=1200"

混合运算

整数与浮点数混合运算时会自动转换为浮点数

类型转换

  • int():将浮点数转换为整数,直接阶段小数部分(不进行四舍五入)如:a=3.5926 int(a) #a=3
  • float():将整数转换为小数,需要在后面补0。如:a=3 float(a) #a=3.0
  • 字符串转换:同样使用int()和float()转换,但是需要注意必须确保格式正确

注意

浮点数精度存在误差:由于二进制的存储限制,可能会出现0.1+0.2=0.30000000000000004的问题。若需要高精度的计算可以使用decmal模块或fractions模块

算术运算符

符号 名称 作用
+ 加法 加法运算
- 减法 减法运算
* 乘法 乘法运算
/ 除法 除法运算
// 整除运算 计算商,余省略
% 取模运算 取余
** 幂运算 幂数运算

优先顺序

括号>幂运算>乘除取模整除>加减

类型转换

数值类型转换

  • int(x):将x转换为整数类型,会截断小数部分
  • float(y):将y转换为浮点数类型

字符串转换

  • str(x):将其他类型转换为字符串
  • chr(x):将整数类型转换为对应的Unicode字符
  • ord(x):将字符转换为对应的Unicode编码

容器类型转换

  • list(s):将序列转换成列表
  • tuple(s):将序列转换成元组
  • set(s):将序列转换成集合(自动去重)
  • dict(d):将键值对转换为字典

布尔类型转换

bool(x):将其他类型转换为布尔值

空值(0,空字符串,None等)为False

非空值为True

标准输入input

Python内置函数,用于控制台读取用户的输入并发返回字符串类型数据

语法:input(prompt)

prompt:将其写入标准输出,末尾不换行

python 复制代码
# 标准输入input
nx=input("请输入你的年龄:")
print(f"你的年龄是{nx}")

练习

python 复制代码
# 计算圆的面积
import math
r=input("请输入圆的半径:")
s=math.pi*int(r)*int(r)
print(f"圆的面积是{s}")
相关推荐
牛大了20235 分钟前
场景题:数据迁移解决方案
开发语言
爱勇宝7 小时前
第 1 章:别把“需求文档”当成真正的需求
前端·后端·程序员
认真的酒窝8 小时前
自己动手开发编译器(十一)语义分析
java·开发语言
Lyn_Li8 小时前
扫描 PDF 歪了怎么办?用 6 种检测方法做本地批量扶正(附开源工具)
python·pdf·ocr·tesseract·开源工具·文档处理·本地处理·扫描件纠偏
金銀銅鐵8 小时前
费马小定理
python·数学·算法
wbs_scy9 小时前
Linux C++ 高并发编程:线程池全链路深度解析,从原理到手撕实现
java·开发语言
JAVA面经实录9179 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
贪玩的蛋挞10 小时前
C#与闭包
开发语言·c#
端庄的战斗机10 小时前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
Full Stack Developme11 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法