我有一个带有字段/列'observation_id'的 astropy 表input_table,其中包含81-126之类的对象。我希望将这两个数字(81 和 126)分开并将它们保存为整数。我在这里编写所有步骤以显示我在每个步骤中拥有的对象类型。如果有不清楚的地方,请告诉我。
In [62]: id=input_table['observation_id']
In [63]: str=id[0]
In [64]: print(str)
81-126
In [65]: print(type(str))
<class 'numpy.str_'>
In [66]: nx,ny=str.split("-")
In [67]: print(nx,ny)
81 126
In [68]: print(type(nx),type(ny))
<class 'str'> <class 'str'>
当我执行以下操作将字符串转换为整数时,
In [70]: int(float(nx))
我得到:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-70-7cfc33470a5c> in <module>()
----> 1 int(float(nx))
ValueError: could not convert string to float: '8\x00\x00\x001\x00\x00\x00'
查看字符串类型的链接'8\x00\x00\x001\x00\x00\x00'
我试过了
In [71]: nx,ny=str.decode(encode='utf-16-le').split('-')
但我明白了
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-71-5f8d49af6ed1> in <module>()
----> 1 nx,ny=str.decode(encode='utf-16-le').split('-')
AttributeError: 'numpy.str_' object has no attribute 'decode'
我不知道如何进一步进行。有人可以帮忙吗?