我有以下文件夹,我从这些文件夹中读取SQL文件并将它们保存为变量:
++folder1
-1.sql
-2.sql
-3.sql
++folder2
-2.sql
下面的代码很好地完成了单个文件夹的工作。如何修改这段代码,使其不仅从一个文件夹中读取,而且还从两个文件夹中读取,并且规则是,如果文件存在于folder2中,则不从folder1读取同名文件?
folder1 = '../folder1/'
for filename in os.listdir(folder1):
path = os.path.join(folder1, filename)
if os.path.isdir(path):
continue
with open(folder1 + filename, 'r') as myfile:
data = myfile.read()
query_name = filename.replace(".sql", "")
exec (query_name + " = data")
发布于 2018-05-31 08:05:19
您可以尝试如下所示:
folders = ['../folder2/','../folder1/']
checked =[]
for folder in folders:
for filename in os.listdir(folder):
if filename not in checked:
checked.append(filename)
path = os.path.join(folder, filename)
if os.path.isdir(path):
continue
with open(folder + filename, 'r') as myfile:
data = myfile.read()
query_name = filename.replace(".sql", "")
exec (query_name + " = data")
https://stackoverflow.com/questions/50614844
复制相似问题