Python学习(四)------- 数据类型(一)

1. Integral 类型

两种Integral类型:int 和 bool

int 和 bool 之间可以相互转换:0表示False,非0表示True;False表示0, True表示1。

整型int

整数可以表示的大小只受限于机器的内存大小。

用0b,0o,0x引导可以分别表示二进制、八进制和十六进制整数。

几个Python中特殊的算术运算符:

x / y:两个整数相除,结果是一个浮点数。

x // y:只保留整数部分。

x ** y:x 的 y 次幂。

divmod(x, y):以二元组的形式得到x除以y的商和余数。

pow(x, y, z):(x ** y) % z。

布尔型bool

布尔型和整型是可以通用的。


2. 浮点类型

三种浮点类型:float类型和complex类型,还有来自标准库的decimal.Decimal类型。

双精度浮点数float

>>> float()
0.0
>>> float
<class 'float'>
>>> float("123")
123.0
>>> float(123)

123.0


比较两个floatS是否相等:

def equal_float(a, b)

    return abs(a-b)<=sys.float_info.epsilon


浮点数转换为整数:

int():返回整数部分,舍弃小数部分;

round():四舍五入;

math.floor / math.ceil:将浮点数向下/向上转换为最近邻的整数。


float的方法:

float.is_integer():如果小数部分为0返回True;

float.as_integer_radio():返回分数表示法,分子和分母构成一个元组;

float.hex():以十六进制表示为字符串;

float.fromhex():从十六进制字符串转换为float;


复数complex

复数用两个浮点数来表示,比如:3.5+2.8j,0.5j等等,可以用complex.real和complex.imag来取复数的实数和虚数部分,还可以用complex.conjugate()来改变虚数部分的符号。

complex()返回0j;

complex("3.5+2.6j")返回3.5+2.6j;

complex(3.5, 2.6)返回3.5+2.6j;

complex(3.5)返回3.5+0j;


math模块不处理复数,得数用cmath模块来处理。


十进制数字decimal.Decimal

>>> import decimal
>>> a = decimal.Decimal(1234)
>>> b = decimal.Decimal("1234.5678")
>>> a+b
Decimal('2468.5678')

创建时不能以浮点数作为参数,因为它不够精确。使用a.from_float()可以使用一个float参数来返回一个最接近的Decimal。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值