使用其他值类型转换值

时间:2016-11-18 14:34:54

标签: python

是否可以代表另一个号码? 我试过这个,但是type返回一个字符串。

n = 1.34
i = 10
type(i)(n)

1 个答案:

答案 0 :(得分:4)

如前所述,您的示例运行正常:

>>> from decimal import Decimal
>>> a = 5
>>> b = 5.0
>>> c = Decimal(5)
>>> type(a)
<class 'int'>
>>> type(b)
<class 'float'>
>>> type(c)
<class 'decimal.Decimal'>

将b(浮动)转换为类型(int):

>>> type(a)(b)
5

将a(int)转换为b类型(float):

>>> type(b)(a)
5.0

将a(int)转换为c类型(十进制):

>>> type(c)(a)
Decimal('5')

请注意,Python的鸭子类型通常不需要这种类型的转换,但我可以想象一些有用的场景。