python - PYTHON:试图获取目录中的每个 .sql 文件作为输入。所以我可以打开()然后读取()每个
问题描述
import os
from os import walk
import psycopg2
take = []
for root,dirs,files in walk('C:\\Users\\sebastian\\Documents\\Code\\sql_tests'):
for file in files:
if file.endswith('.sql'):
take = os.path.join(root,file)
print(take)
f = open(takes)
print(f)
full_sql = f.read()
print (full_sql)
打印:
C:\Users\sebastian\Documents\Code\sql_tests\sql_test.sql
C:\Users\sebastian\Documents\Code\sql_tests\sql_test2.sql
打印 [0]
C
问题是它认为目录中的每个字符都是列表的一个元素。我可以从由它们之间的新行分隔的那个列表中创建一个新列表吗?
解决方案
这是一个例子,我在你建立列表的方式时做了一些改变
import os
from os import walk
import psycopg2
take = []
for root,dirs,files in walk('D:\\MY\\PAHT\\ALLSQLFILES\\'):
for file in files:
if file.endswith('.sql'):
#take = os.path.join(root,file)
take.append(os.path.join(root,file))
print(take)