用Python加载文件。生丝
我想使用某个包在Python中加载一个文件 包的加载函数需要知道文件名(+扩展名)和位置。像这样:用Python加载文件。生丝,python,load,Python,Load,我想使用某个包在Python中加载一个文件 包的加载函数需要知道文件名(+扩展名)和位置。像这样: package.load(os.path.join(my_directory_name, r'my_filename.xml')) 我的情况是,我从数据帧中获取文件名。然后添加正确的扩展名,即xml,然后尝试加载该文件 import os import pandas as pd package.load(os.path.join(directory_name, df['filename'] +
package.load(os.path.join(my_directory_name, r'my_filename.xml'))
我的情况是,我从数据帧中获取文件名。然后添加正确的扩展名,即xml,然后尝试加载该文件
import os
import pandas as pd
package.load(os.path.join(directory_name, df['filename'] + '.xml'))
我得到一个错误:目录中没有这样的文件
问题是r不在那里。它应该在绳子前面。如何使字符串df['filename]+'.xml'原始?Python将反斜杠解释为特殊字符,但我希望它们表示实际的反斜杠。试试这个,它应该可以工作
package.load(os.path.join(directory_name, repr(df['filename'] + '.xml')))
我用了这个:
escape_dict = {'\'': r'\'', '\"': r'\"'}
def _raw(text):
"""Returns a raw string representation of text"""
new_string = ''
for char in text:
try:
new_string += escape_dict[char]
except KeyError:
new_string += char
return new_string
如果您现在将_raw(我的_字符串)放入,它将工作 你在
df['filename
之后漏掉了一个引号,这是一个输入错误吗?是的,那是一个输入错误。谢谢。你能举个例子吗?directory\u name
和df['filename']
不起作用的值是多少?我建议你打印os.path.join(…)的结果
并在此处发布例如:directory_name='C:\Documents'和df['filename']='overviewdata'。这些只是字符串。当您编写:package.load(os.path.join('C:\Documents',r'overviewdata.xml')时,代码可以工作。repr()似乎只是在df['filename']+'.xml'周围添加了引号。我仍然会遇到同样的错误。