【问题标题】:Convert multiple values to integer? [duplicate]将多个值转换为整数? [复制]
【发布时间】:2022-01-09 12:19:52
【问题描述】:

我有这样的代码

def some_data():

    file_data = open(r"some.txt","r")

    result = {}
    for line in file_data:
        values = line.split(sep="\t")
        if values[-1][-1:] == "\n":
            values[-1] = values[-1][:-1]
        else:
            values[-1] = values[-1]
        result.update({values[0]: [values[1], values[2],values[3], values[4]]})

    return result

这给了我输出:

{'130121322X': ['90', '50', '40', '60'], '130121323Y': ['80', '70', '60', '60'], '130121325X': ['100', '90', '75', '50'], '130121334Y': ['90', '90', '80', '85'], '130121337Z': ['95', '60', '70', '80'], '130121338X': ['50', '50', '40', '60']}

如何将多个值转换为整数?所以应该是这样的,即:

{'130121322X': [90, 50, 40, 60], '130121323Y': [80, 70, 60, 60], '130121325X': [100, 90, 75, 50], '130121334Y': [90, 90, 80, 85], '130121337Z': [95, 60, 70, 80], '130121338X': [50, 50, 40, 60]}

【问题讨论】:

  • 您可以使用map 将它们转换为int,如下所示:map(int, values)

标签: python python-3.x list dictionary integer


【解决方案1】:

现在有一堆括号,但是...

d = {
    '130121322X': ['90', '50', '40', '60'], 
    '130121323Y': ['80', '70', '60','60'], 
    '130121325X': ['100', '90', '75', '50'], 
    '130121334Y': ['90', '90', '80', '85'], 
    '130121337Z': ['95', '60', '70', '80'], 
    '130121338X': ['50', '50', '40', '60']
}

dict(map(lambda x: (x[0],list(map(int,x[1]))),d.items()))

此外,您似乎有一个包含列的文件,以“\t'”分隔。您可以使用pandas.read_csv。它可以很好地处理 .txt 文件,并为您提供DataFrame,让您可以对数据进行功能性操作。检查read_csvthe guide
假设您有一个 .txt 文件,例如

some    2   3   4
random  6   7   8
text    10  11  12

你可以使用

import pandas as pd
df = pd.read_csv('path/to/txt',sep='\t', 
                 names=['col1','col2','col3','col4'])
print(df)

获取数据框

     col1  col2  col3  col4
0    some     2     3     4
1  random     6     7     8
2    text    10    11    12

另外,所有的整数都已经被读取为整数了

【讨论】:

    猜你喜欢
    • 2021-04-15
    • 1970-01-01
    • 1970-01-01
    • 2021-08-01
    • 2014-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-09
    相关资源
    最近更新 更多