前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python基础之数值类型

python基础之数值类型

作者头像
py3study
发布2020-01-19 15:25:59
9610
发布2020-01-19 15:25:59
举报
文章被收录于专栏:python3python3

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型数值

实例:

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-03-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档