同时读取多个.csv文件

2024-06-28 21:04:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图通过一个循环从两个不同的.csv文件读取值。当我打开一个.csv文件时,我能够完美地运行程序;但是,当我导入第二个.csv文件时,我收到了如下错误:


回溯(最近一次呼叫): 文件“C:\Users\crteeic\Desktop\Project\Full Program(Testing).py”,第210行,输入 打开(MagnaDC设置点.csv','r')和('Amatek集合点.csv','r')作为CSV文件:

属性错误:输入

该程序的目的是从两个.csv文件中读取值并将这些值发送到两个不同的电源设备。请查找以下代码:

with open('MagnaDC Set Points.csv', 'r') and ('Amatek Set Points.csv', 'r') as csvfile:
    dataset = csv.reader(csvfile, delimiter=',')
    next(dataset)
    rows = list(dataset)
    inputSamplesm = np.empty([len(rows), 2], dtype=float)
    outputSamplesm = np.empty([1,3], dtype=float)
    inputSamplesa = np.empty([len(rows), 2], dtype=float)
    outputSamplesa = np.empty([1,3], dtype=float)
    testStartTime = time.time()
    for idx, data in enumerate(rows):
        inputSamplesm[idx] = [data[0], data[1]]
        inputSamplesa[idx] = [data[0], data[1]]
        s.sendall('VOLT {0}\n'.format(data[0]).encode('utf-8'))
        conn.write('VOLT {0}\n'.format(data[0]).encode('utf-8'))
        stopTime = testStartTime + int(data[1])

请指教。谢谢您。在


Tags: 文件csv程序data错误npfloatdataset
2条回答

如果您只想串行读取两个文件并发送它们,请在文件名上循环:

filenames = [
  "MagnaDC Set Points.csv",
  "Amatek Set Points.csv",
]
for filename in filenames:
    with open(filename, "r") as csvfile:
        dataset = csv.reader(csvfile, delimiter=",")
        next(dataset)
        rows = list(dataset)
        inputSamplesm = np.empty([len(rows), 2], dtype=float)
        outputSamplesm = np.empty([1, 3], dtype=float)
        inputSamplesa = np.empty([len(rows), 2], dtype=float)
        outputSamplesa = np.empty([1, 3], dtype=float)
        testStartTime = time.time()
        for idx, data in enumerate(rows):
            inputSamplesm[idx] = [data[0], data[1]]
            inputSamplesa[idx] = [data[0], data[1]]
            s.sendall("VOLT {0}\n".format(data[0]).encode("utf-8"))
            conn.write("VOLT {0}\n".format(data[0]).encode("utf-8"))
            stopTime = testStartTime + int(data[1])

您需要单独打开文件:

with open('MagnaDC Set Points.csv', 'r') as csvfile1, open('Amatek Set Points.csv', 'r') as csvfile2: 

更多信息: Read two textfile line by line simultaneously -python

相关问题 更多 >