Python读取多个csv文件,为什么前n-1个文件数据被刷新?

我顺序读取3个csv文件,debug看的时候,每次能读取刷新,但是当新的csv文件读取进来的时候,前面读取的数据都被刷新了。。。导致‘RMS-data’、‘SiTF-data’、‘Dout-data’内容一致。不太明白为什么会有这种bug。。

def Read_csv (FilePath):
    with open(FilePath,'r') as csvFile:
        reader = csv.reader(csvFile)
        i = 0
        for line in reader:
            # line.remove('')
            data[i]=line
            i = i+1
        # print(data)
        # print(len(data))

    return data #data[:,1]第二列的所有数据

 

肯定会有影响的  你的data是全局  那么读取第二个文件的时候  data的数据就会被改变  同样 之前被赋值的RMS的数据也被改变了

或者你可以深拷贝一份再赋值  就不会跟着被改变了

data不要设置全局  设置为局部变量

就不会被更新了

可是Read-csv的函数是在另一个文件里面调用的,data是不是全局会有影响吗?

啊,确实是,看来我对全局变量的理解还是不够,谢谢~~

data 是全局的么?

是的,在另外一个文件里,data是全局变量的