我如何用Python打开一个文件,文件名包含在字符串中?



是否有一种方法可以打开文件,如果文件名的一个单词包含在字符串中?在这里,我已经将单词keys存储在变量'query'中,我想如果单词'keys'是字符串'query'的值,它应该打开文件'keys in drawer.txt',因为它包含单词keys,或者如果'query'的值是'pen',它应该打开文件'pen on table'.txt。下面是pen on table.txt文件:

pen is on the table

key in drawer.txt

the keys are in the drawer

我该怎么做?我知道这有点复杂,但请试着回答这个问题,我在这从过去的2天!

query=("keys")
list_directory=listdir("E:\Python_Projects\Sandwich\user_data\Remember things\")

if query in list_directory: 
with open(f"E:\Python_Projects\Sandwich\user_data\Remember things\ 
{list_directory}",'r') as file:
read_file=file.read
print(read_file)
file.close
pass

由于某些原因,这段代码不能工作。

read()和close()是方法,而不是属性。你应该写file.read()而不是file.read。此外,当使用时关闭文件是多余的字。

list_directory是字符串列表,而不是字符串。这意味着您需要遍历它,以便比较列表中的每个字符串与您的查询

您还需要调用file.readfile.close方法,通过添加括号(file.read(),file.close()),否则它们将不会执行。

修改后的代码应该能达到这个效果:

query = "keys"
path = "E:\Python_Projects\Sandwich\user_data\Remember things\"
list_directory = listdir(path)
for file_name in list_directory:
if query in file_name:
with open(f"{path}{file_name}",'r') as file:
content = file.read()
print(content)
file.close()

相关内容

  • 没有找到相关文章

最新更新