如何读取文件并将数据转换为数字?

时间:2021-05-07 16:00:12

标签: python numpy

我正在尝试读取包含

的 txt 文件

1,2 20000

并可能读取具有相同类型的其他文本文件,但只有更多的数字,例如:

1,2,3 30000 要么 2,3,4,5 2000000。

with open('coordinate.txt','r') as file:
    for line in file:
        line = line.strip()
        pieces = line.split()
        data.append(pieces)

然后分配 coord = data[0]trial = data[1] 但是 coord 变成了 ["1,2"] ,我只是不知道如何通过去掉逗号并变成 numpy 形式来分隔 1 和 2。如何正确读取文件并将其指定为我想要的格式?

2 个答案:

答案 0 :(得分:0)

您可以使用正则表达式拆分多个分隔符。类似的东西:

import re
txt = "1,2 20000"
txt_arr = re.split(r'[,\s]\s*', txt)

更多信息here

答案 1 :(得分:0)

更简单的方法是使用 split 方法:

pieces = []
lines = None
with open('cooridnate.txt', 'r') as fp:
    lines = fp.readlines() # Get lines

for line in lines:
    splitted_line = line.rstrip().split(',') # Split line with "," as a delimiter
    pieces.append({
        'coord': int(splited_line[0]),
        'trial': splitted_line[1:]
    }) # Append the splitted in pieces

print(pieces)

您可能还需要创建一个循环进行试用(如果您也想转换它)。 是您要找的吗?