python数字类型-python数字类型

在python中,数据采用了对象的形式(无论是python内置对象还是使用python工具和像C语言自行创建的对象)。

Python数字类型工具:整数和浮点数

复数

固定精度的十进制数

有理分数

集合

布尔类型

无穷的整数类型

各种数字内置函数和模块

python数字类型在程序中的显示方式之一是作为常量(还有一个是调用模块使用函数):

数字 常量

12,-12 整数

1.23 浮点数

0o177,0x9ff,0b0000100 八进制、十六进制、二进制

3+4j 复数

内置数学工具和扩展:

表达式操作符

+-*/>>**&

内置数学函数

pow,abs,round,int等

公共模块

random,math等

表达式是大多数数字类型的基本工具。

在实际应用中的数字:

变量和基本的表达式

变量和对象不一样,无需声明

变量在给它第一次赋值时创建

变量在表达式中使用将被替换为他们的值

变量在表达式中使用时需要先赋值,否则会报错。

常用表达式1、简单加减乘除:

>>> a=4

>>> b=5

>>> a+b,a-b

(9, -1)

>>> a*3,b/2

(12, 2.5)

>>> a%3,b**2

(1, 25)

>>> a

True

>>> a>b

False

>>> a==b

False

常用表达式二、除法:真除法、Floor除法

x/y:在python3.0中是真除法,无论任何类型都会保留小数部分。

>>> 5/1

5.0

>>> 9/3

3.0

x//y:截掉余数并针对数字类型保留类型

>>> 5//3

1

>>> 9//2

4

>>> 5.0//3

1.0

>>> 5//2.0,5//-2.0

(2.0, -3.0)

整数精度,在python3.0中整数可以使用无穷的长度,只要内存足够大。

常用表达式三、十六进制、八进制、二进制计数

>>> 0o7,0o11,0o377

(7, 9, 255)

>>> 0x01,0xF,0xFF

(1, 15, 255)

>>> 0b1,0b1000,0b11111111

(1, 8, 255)

>>> oct(64),hex(64),bin(64) 将十进制转换为八进制、十六进制、二进制函数

('0o100', '0x40', '0b1000000')

int函数将一个数字字符串变换成一个整数,第二个数字是指定的数字的进制。

>>> int('64'),int('100',8),int('40',16),int('1000000',2)

( 64, 64, 64, 64)

常用表达式四、复数

>>> 2+2j

(2+2j)

以上介绍了核心数据类型:整数、浮点、复数,他们是通过常量表达式创建的,接下来介绍其他数据类型。

1、小数数字,是通过导入模块调用函数后创建的,使用小数数字有固定的精度浮点值。

>>> from decimal import Decimal

>>> Decimal('0.2')+Decimal('0.01')

Decimal('0.21')

a、设置全局精度

>>> import decimal

>>> decimal.Decimal(1)/decimal.Decimal(7)

Decimal('0.1428571428571428571428571429')

>>> decimal.getcontext().prec=4 #通过调用decimal模块的getcontext函数指定保留小数位数,来指定精度

>>> decimal.Decimal(1)/decimal.Decimal(7)

Decimal('0.1429')

b、设置临时精度

>>> import decimal

>>> decimal.Decimal('1.00')/decimal.Decimal('7.00')

Decimal('0.1428571428571428571428571429')

>>> with decimal.localcontext() as ctx: #通过调用decimal模块的localcontext函数临时保留小数位数

... ctx.prec=2

... decimal.Decimal('1.00')/decimal.Decimal('7.00')

...

Decimal('0.14')

>>> decimal.Decimal(1)/decimal.Decimal(7)

Decimal('0.1428571428571428571428571429')

2、分数类型(fraction)

类似小数数字,也是通过模块的导入后函数创建。

>>> from fractions import Fraction

>>> x=Fraction(1,4)

>>> x

Fraction(1, 4)

>>> print(x)

1/4

也可以通过浮点数创建

>>> Fraction(.25)

Fraction(1, 4)

>>> Fraction('.25')

Fraction(1, 4)

3、集合

集合是无序的且不会将键匹配到值,既不是序列也不是映射类型。使用内置函数set来创建集合类型。

注:一个项只能在集合中出现一次。最重要的一个使用原因。。

>>> set('sspa')

{'a', 's', 'p'}

以下是创建集合的方式:

通用方式

>>> x=set('abcde')

>>> y=set('efghj')

>>> x,y

({'e', 'b', 'd', 'c', 'a'}, {'j', 'f', 'h', 'e', 'g'})

>>> x-y

{'c', 'd', 'a', 'b'}

>>> x|y

{'j', 'f', 'h', 'e', 'b', 'd', 'g', 'c', 'a'}

>>> x&y

{'e'}

3.0的添加方式:

>>> set([1,2,3,4])

{1, 2, 3, 4}

>>> set(['spam'])

{'spam'}

>>> set('spam')

{'m', 'a', 's', 'p'}

>>> set() #空集合必须使用set创建

set()

>>>

4、布尔型

true和false

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值