Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 同时读取多个.csv文件_Python_Csv_For Loop_With Statement - Fatal编程技术网

Python 同时读取多个.csv文件

Python 同时读取多个.csv文件,python,csv,for-loop,with-statement,Python,Csv,For Loop,With Statement,我试图通过循环从两个不同的.csv文件中读取值。我能够在打开一个.csv文件时完美地运行程序;然而,当我导入第二个.csv文件时,我得到一个如下所述的错误: 回溯(最近一次呼叫最后一次): 文件“C:\Users\crteeic\Desktop\Project\Full Program(Testing).py”,第210行,在 将open('MagnaDC Set Points.csv','r')和('Amatek Set Points.csv','r')作为csvfile: Attribut

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


回溯(最近一次呼叫最后一次): 文件“C:\Users\crteeic\Desktop\Project\Full Program(Testing).py”,第210行,在 将open('MagnaDC Set Points.csv','r')和('Amatek Set Points.csv','r')作为csvfile:

AttributeError:输入 该程序的目的是从两个.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])

请给我一些建议。谢谢。

您需要单独打开文件:

with open('MagnaDC Set Points.csv', 'r') as csvfile1, open('Amatek Set Points.csv', 'r') as csvfile2: 
更多信息:
您需要单独打开文件:

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

如果您只想连续读取并发送这两个文件,请在文件名上循环:

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])

如果要串行读取并发送这两个文件,请循环文件名:

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])

谢谢它工作得很好。谢谢!它工作得很好。谢谢你的帮助!谢谢你的帮助!