如何解决如何迭代文件名并将其附加到文件内容
我想以这种格式保存数据
文件名:文件内容
但是当我运行我的代码时,它不起作用。你能帮忙吗?
这将获取文件名
def list_of_files():
path = '/mnt/c/baseline'
files = os.listdir(path)
for f in files:
# print(f)
return(files)
这将加载内容
def load_file(filename):
loadfile = open("aivc-tests/baseline/"+ filename,"r")
return(loadfile)
这应该获取每个文件名并将其附加到正确的加载文件中
a = str(list_of_files())
data2 = []
data2 = {
for i in a:
name_of_file: load_file(filename)
}
print(data2)
请帮助
解决方法
首先删除函数中返回值周围的括号。
然后
loadfile = open("aivc-tests/baseline/"+ filename,"r")
仅返回一种文件指针。您仍然需要调用read()
函数来获取文件的内容。
更改为
def load_file(filename):
# variable for file content
text_str=""
# open file
with open("aivc-tests/baseline/"+ filename,"r") as f:
# read file
text_str=f.read()
return text_str
,
我遍历了代码,并使其与计算机上的某些文件一起运行。当然,这可能与您有所不同,因为我不知道您要打开的文件类型以及要处理的数据类型(数字或字符串)。
尽管如此,我还是设法做到这一点,希望对您有所帮助:
def list_of_files():
path = '/mnt/c/baseline'
files = os.listdir(path)
return(files)
def load_file(filename):
loadfile = open("aivc-tests/baseline/"+ filename,"r")
return(loadfile)
a = list_of_files()
data2 = { i : load_file(filename) for i in a } #dictionary with data and filenames
我还假设您可能想更改用“ load_file(i)”调用“ load_file(filename)”的方式来获取该确切文件的数据,因为“ i”将是文件的字符串名称>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。