python初步自学知识总结——数据对象(上)

数据对象

——一切皆对象
python中任何一个数据对象,都是所属类型的一个实例(instance)。
数据对象类型:
一.可导入类型:导入型Decimal和Fraction是内置数值类型的扩展
1.Decimal:
(1)Decimal(小数)类型对象是通过导入decimal模块中的Decimal函数创建的。是对float类型的扩展,以弥补因存储数值的空间有限而造成的浮点数缺乏精确性的不足。

>>> 0.1+0.1+0.1-0.3
5.551115123125783e-17
>>> from decimal import Decimal
>>> Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3')
Decimal('0.0')

(2)利用Decimal可以控制精度

>>> from decimal import Decimal
>>> Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3')
Decimal('0.0')
>>> import decimal
>>> decimal.Decimal(1)/decimal.Decimal(7)
Decimal('0.1428571428571428571428571429')
>>> decimal.getcontext().prec=50
>>> decimal.Decimal(1)/decimal.Decimal(7)
Decimal('0.14285714285714285714285714285714285714285714285714')

2.Fraction:
Fraction(分数)类型可用于创建一个有理数对象,明确地保留一个分子和分母,从另一个角度避免了浮点数学的某些不精确性和局限性。

>>> from fractions import Fraction
>>> Fraction(2,3)
Fraction(2, 3)
>>> Fraction(2,3)-Fraction(1,2)
Fraction(1, 6)

二,用户定义类型
三.内置类型:
1.none:
(1)none:空对象
2.序列:
(1)str:字符串
‘abc’,’‘abc’’,’’‘abc’’’,’‘123’’
(2)unicode:Unicode字符串(py2)
u’abc’,u’‘abc’’,u’’‘abc’’’
(3)list:列表
[123],[‘abc’,‘efg’,‘ijklm’],list[123]
(4)tuple:元组
(1,2,3,‘4’,‘5’),tuple(’‘1234’’)
3.映射:
(1)dic:字典
{‘name’,‘wuyuan’,‘blog’:‘wuyuans.com’,‘age’:23}
4.集合:
(1)set:可变集合
set([1,2,3])
(2)frozenset:不可变集合
frozenset([1,2,3])
5.数字:
(1)int:整数
——不带小数点的数值对象
十进制(0,1,2,3,4,5,6,7,8,9和+,-)
二进制(数字0和字符b,B前缀)
0b111=(7)10
八进制(数字0和字符o,O前缀)
0o127=(87)10
十六进制(数字0和字符x,X前缀)
0x105=(261)10
(2)long:长整数,任意精度(py2)
(3)float:浮点数
——带一个小数点,也可以是含有科学计数标志e或者E的数值对象
float类型标识范围:2.225e-309——1.797e308

>>> import sys
>>> print(sys.float_info)
sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)

(4)complex:复数
——实部+虚部来表示
<1>写成实部+虚部,虚部以j或J结尾。
<2>用内置函数complex(real,img)表示。

(2+3j)
>>> 5j
5j
>>> complex(3,5)
(3+5j)
>>> complex(,5)
SyntaxError: invalid syntax
>>> complex(5,)
(5+0j)
>>> complex(0,7)
7j

由此可知,使用内置函数complex()创建复数对象时,实部不可缺省,而虚部可以缺省,缺省时默认为0。

(5)bool:布尔值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值