我正在读取一些数据源中的一些数字,这些数字代表了我将用于解决TSP类问题的xy坐标。我是python新手,所以我试图充分利用列表。在阅读和解析数据后,我剩下一个如下所示的字符串列表:从字符串列表中铸造列表到Python中的整数列表
[['565.0', '575.0'], ['1215.0', '245.0'], ...yougetthepoint... ['1740.0', '245.0']]
我宁愿处理整数点。我如何将这些包含字符串的列表转换为包含整数的列表?他们似乎没有很好地铸造,因为我得到这个错误:
ValueError: invalid literal for int() with base 10: '565.0'
小数似乎是导致问题。
请不要称之为“铸造”。 Python不使用“投射”。你的问题不是关于“铸造”,因为它出现在Java或C++中。你的问题是关于从字符串到浮点数据的简单转换。 – 2010-01-30 14:05:40
@S。洛特如何“从字符串到浮点数据的简单转换”不是铸造?抛开术语,它是做同样的事情。 – Chris 2010-01-30 15:17:53
S.洛特是正确的。您正在创建一个字符串对象的浮动对象。静态类型语言中的“Casting”不会创建新对象,它们只是用不同类型重新解释同一对象,并且如果原始对象被删除,那么该对象也会被删除。在Python中,如果我定义了一个字符串s =“123.4”,那么float(s)完全创建一个新对象,与原始字符串无关。这就是为什么你在Python中做的与演员不一样的原因。 – PaulMcG 2010-01-31 01:03:24