文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python基础之数值类型

2023-01-30 22:14

关注

python基础之数值类型

python3中共有11种基本数据类型,而这11种基本数据类型又通常分成3类,即

  • 数值类型:int (整形)float(浮点型) bool(布尔) complex(复数)
  • 序列类型:string(字符串) list(列表) couple(元组) bytes(二进制字符串)  bytearray(二进制数组)
  • 散列类型:set(集合) dict(字典)

其中 bytes与bytearray是python3中引入的新类型。

从数值类型说起,首先列出python中常见的算术运算符:

运算符 描述 实例
+ 加 :两个对象相加 2 + 4输出结果 6
- 减 :得到负数或是一个数减去另一个数 1 -3 输出结果-2
* 乘 - 两个数相乘                                                  2 * 4 输出结果8                                                      
/ 除 - x除以y 6 / 3 输出结果 2.0
% 取余(取模) - 返回除法的余数 6 % 3 输出结果 0 
// 取整除 - 返回商的整数部分(向下取整) 5//2输出结果2(注:5.0//2.0输出结果2.0)
**  幂 - 返回x的y次幂 2**4 为2的4次方, 输出结果16

 

 

 

 

 

 

 

 

 

值得注意的是python中的数值运算会存在如下图所示小数运算不精确的问题

 

 

 

此时可以通过导入decimal模块来解决这个问题。首先来介绍一下decimal模块:

注:模块(module)是 Python 中非常重要的东西,你可以把它理解为 Python 的扩展工具。换言之,Python 默认情况下提供了一些可用的东西,但是这些默认情况下提供的还远远不能满足编程实践的需要,于是就有人专门制作了另外一些工具。这些工具被称之为“模块”

Python提供了decimal模块用于十进制数学计算,它具有以下特点:

  • 提供十进制数据类型,并且存储为十进制数序列;
  • 有界精度:用于存储数字的位数是固定的,可以通过decimal.getcontext().prec=x 来设定,不同的数字可以有不同的精度
  • 浮点:十进制小数点的位置不固定(但位数是固定的)

使用方法如下图所示,首先需要导入decimal模块(python中导入模块的语法为 import + 模块名)。通过调用decimal.Decimal()将数值设置为decimal.Decimal类型

之后再对其进行之前的减法运算,可以看到此时输出了精确的结果,前文中的小数计算不精确的问题得以解决。

 

在数学之中,除了加减乘除四则运算之外还有其它更多的运算,比如开方、对数运算等等,要实现这些运算,需要用到 Python 中的一个模块:Math

math模块中的常用方法有:

                  方法                                                                       描述                                                                              实例                                            
math.pi 返回数学常数Π= 3.141592653589793 >>> math.pi    3.141592653589793
math.e 返回数学常数e= 2.718281828459045 >>> math.e     2.718281828459045
math.ceil(x) 返回x的上限,返回最小的整数A  (A>=x)。如math.ceil(3.14)返回的整数为4 >>> math.ceil(3.14)      4
math.floor(x) 返回x的下限,返回一个值最大整数A(A<=x)。如math.floor(3.14)返回的整数为3 >>> math.floor(3.14)     3
math.fabs(x) 返回x的绝对值 >>> math.fabs(-3)      3     
math . pow(x,y) 返回x的y次方,即返回 xy >>> math.pow(3,2)      9
math.sqrt(x) 返回√x >>> math.sqrt(9)      3
math.degrees(x) 将角x从弧度转换成角度。 >>> math.degrees(math.pi)      180.0
math.radians(x) 把角x从度转换成弧度 >>> math.radians(180)        3.141592653589793

 

 

 

 

 

 

 

bool(布尔类型)

python中布尔值使用常量True和False来表示。布尔型变量可用于逻辑表达式,也就是“或”“与”“非”之类的逻辑运算和大于小于之类的关系运算,逻辑表达式运算结果为真或为假。例:

注:

1.在数值上下文环境中,True被当作1,False被当作0,例如 True+3=>4

2.其他类型值转换bool值时除了''、""、''''''、""""""、0、()、[]、{}、None、0.0、0L、0.0+0.0j、False为False,其他都为True 例如 bool(-2)=>True

complex(虚数类型)

complex型数据由实部和虚部两个部分构成:real+imag(虚部后缀为j或J)其中实数部分和虚数部分都为浮点数。
例如定义一个虚数,分别输出它的实部和虚部和共轭复数:

数值类型的转换

python中的不同数值类型大多可以相互转换,要注意的是当将float数值转换成int型时python会舍去小数点后部分,且complex型数值无法转换成int型和float型数值

实例:

 

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯