python笔记(3)数值类型

python里的数字类型包括:整数,浮点数,复数,fixed-precision 十进制数, rational fractional number, set, boolean, unlimited integer precision,

1.整数的位数可以无限制增长(内存允许的情况下);十六进制数以 0x或者0X开头;八进制数以0o或者0O开头;二进制以0b或者0B开头;hex(), oct() 和 bin()把十进制数转化成相应的进制数;int(str, base)把对应进制的字符串数转化为十进制(base默认为10);repr()或者str() 把任意类型的对象转化为字符串;

>>> int('0o100', 8)
64
>>> int(0o100)
64

>>> eval('64'), eval('0o100'), eval('0x40'), eval('0b1000000')
(64, 64, 64, 64)

eval()也可以进行进制转换;但它会把字符串当做代码来编译,运行。,因此比较慢

>>> '{0:o}, {1:x}, {2:b}'.format(64, 64, 64)
'100, 40, 1000000'

使用format转换。。

2. X//Y:返回整数或者 float(floor,整数部分是向下取整); X/Y会返回包含小数的结果

3. 一些运算符: or, and, not(逻辑运算); is, is not (identity test); in, not in(membership test); x if y else z(x is evaluated only if y is true); ×× (power)

4.比较运算符可以级联: 1 == 2 < 3 相当于  1 ==2 and 2 < 3; 1 < 2 < 3相当于  1 < 2 and 2 < 3

5. floor v.s. trunc:

import math

5//-2 = -3; math.trunc(5/-2) = -2 ;math.floor(5/-2) = -3  

round(1.2) = 1 round(1.7) = 2 round(-1.8) = -2 round(-1.1) = -1

int(1.1) = 1 int(-1.7) = -1

6. set: 无序,不相同(unique),不可改变(immutable)的对象的集合,支持数学的集合理论操作;set本身可以增长或者减小,包含的对象类型可以各不相同;相当于一个没有value的 字典

>>> x = set('abcde')
>>> y = set('bdxyz')

>>> x – y
set(['a', 'c', 'e'])

>>> x & y
set(['b', 'd'])

>>> x > y

False

>>> z = x.intersection(y)

>>> q={1,2,3,4}
>>> q
{1, 2, 3, 4}
>>> type(q)
<class 'set'>

set comprehension:

>>> {x ** 2 for x in [1, 2, 3, 4]}
{16, 1, 4, 9}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值