所以我有一个列表,我需要解析和操作列表的内容。子列表中有数字和单词的字符串,我想把数字变成整数。我不认为这有什么关系,但我会提到它以防万一:我的原始数据来自一个CSV,我用换行符拆分,然后用逗号再次拆分
我的代码是什么样子的:
def prep_data(data):
list = data.split('\n') #Splits data on newline
list = list[1:-1] #Gets rid of header and last row, which is an empty string
prepped = []
for x in list:
prepped.append(x.split(','))
for item in prepped: #Converts the item into an int if it is able to be converted
for x in item:
try:
item[x] = int(item[x])
except:
pass
return prepped
我试图循环通过prepped中的每个子列表,并更改其中值的类型,但似乎循环没有做任何事情,因为prep_data返回的内容与我实现for循环之前相同
我不确定您的函数,因为可能我不了解您的收入数据,但您可以尝试以下方法,因为如果您只通过,您可能会丢失字符串或奇怪的数据:
我想我看到了问题所在,您认为python在分配任务方面比实际情况更慷慨
我不能在我现在使用的机器上运行这个,但问题似乎是“prepped”实际上没有收到任何新的分配,您只是在更改子数组“item”中的值
相关问题 更多 >
编程相关推荐