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}")
相关推荐
高频因子挖掘机19 分钟前
历史行情返回顺序变了,为什么按行号计算指标很危险?
后端·github·api
益莱储中国29 分钟前
深度解析:RF 实验室从 5G迈向 6G 的过程中保持技术领先与设备升级的路径
开发语言·php
xiaogai_gai1 小时前
仅查询策略实战:从金蝶云·星空旗舰版定时拉取收料通知单
大数据·数据库·python
benchmark_cc1 小时前
Python 量化系统如何设计统一的数据访问接口:从策略解耦到数据层架构
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
const_qiu2 小时前
第四章 00:开篇 —— 从「会聊天」到「记得住、会干活、能协作」
java·开发语言·人工智能·python
Wang's Blog2 小时前
Java 项目实战: 交友项目 - 个人资料管理的更新接口实现与坑
java·开发语言·交友
团子哒哒2 小时前
数组、切片和Map
后端
专注仿真2 小时前
ThinkPHP6 API接口开发实例:从零搭建RESTful风格接口
后端·php·restful
开心猴爷2 小时前
应对iOS审核4.3:可以使用 IpaGuard 来给属性名混淆的技术细节与平衡之道
后端·ios
1m555555552 小时前
RAG 工程实战(五):正确知识已经进入 Prompt,为什么大模型还是会答错?
后端·面试