即使在类型转换python之后,unicode的类型也永远不会改变

时间:2014-01-31 02:19:09

标签: python string unicode

有人知道为什么即使在类型转换后unicode字符串的类型也不会改变。这是在Python中,我有一个我试过的样本 - 与我脚本中的内容类似。

我需要检查2个变量(整数)是否应该相等。其中一个是int而另一个是int,即使在使用int / float类型之后,类型也永远不会从unicode更改。

>>> x = 999.99
>>> type(x)
<type 'float'>
>>> x = u'999.99'
>>> type(x)
<type 'unicode'>
>>> x.decode('utf-8')
u'999.99'
>>> type(x)
<type 'unicode'>
>>> float(x)
999.99
>>> type(x)
<type 'unicode'>
>>> int(float(x))
999
>>> type(x)
<type 'unicode'>
>>> 

1 个答案:

答案 0 :(得分:2)

float(x)实际上并未修改x,它只返回float - 它的版本。我想你想要的是:

x = int(float(x))