Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在windows中使用字符串文件名_Python_Windows_Wkhtmltopdf - Fatal编程技术网

Python 在windows中使用字符串文件名

Python 在windows中使用字符串文件名,python,windows,wkhtmltopdf,Python,Windows,Wkhtmltopdf,我有以下几行代码在linux上运行良好: input_file = '%s/my_input.html' % settings.FILE_PATH args =['wkhtmltopdf', input_file, '-'] popen = Popen(args, stdout=PIPE, stderr=PIPE) wkhtmltopdf在Windows中无法运行,而在linux上我一点问题都没有。我认为这是与斜杠/反斜杠相关的问题,但不知道如何解决它。已经尝试使用反斜杠和双反斜杠 有什么建议

我有以下几行代码在linux上运行良好:

input_file = '%s/my_input.html' % settings.FILE_PATH
args =['wkhtmltopdf', input_file, '-']
popen = Popen(args, stdout=PIPE, stderr=PIPE)
wkhtmltopdf
在Windows中无法运行,而在linux上我一点问题都没有。我认为这是与斜杠/反斜杠相关的问题,但不知道如何解决它。已经尝试使用反斜杠和双反斜杠

有什么建议吗

所有这些变化中存在相同的错误:

"C:\\tmp\\input.html"

"C:\tmp\input.html"

os.path.join("C:\\tmp", "input.html")

'%s%sinput.html' % ('C:\\tmp', os.path.sep)
WindowsError位于/admin/salidas/pdf/[Error 2]El-sistema no-puede 哈拉尔阿尔奇沃酒店

这意味着系统找不到指定的文件


在Popen行中,通常在处理路径时尝试使用原始字符串。。i、 例如,在路径名之前预先挂起一个
r
。例如:

my_path = 'c:\test\bob`
不如

my_path = r'c:\test\bob`
因为这将防止对路径规范中的
\t
\b
进行违背您兴趣的解释


另外,请查看模块及其特定于操作系统的函数/信息,了解在给定操作系统上使用了哪些路径分隔符(),以及函数等,这比直接使用字符串来指定/操作路径更可取。

通常,在处理路径时,请尝试使用原始字符串。。i、 例如,在路径名之前预先挂起一个
r
。例如:

my_path = 'c:\test\bob`
不如

my_path = r'c:\test\bob`
因为这将防止对路径规范中的
\t
\b
进行违背您兴趣的解释


另外,请查看模块及其特定于操作系统的函数/信息,了解在给定操作系统上使用了哪些路径分隔符(),以及函数等,这比直接使用字符串来指定/操作路径更可取。

不要将文件路径视为简单字符串,而是使用python库类将其作为路径进行管理。在这种情况下


不要将文件路径视为简单字符串,而是使用python库类将它们作为路径进行管理。在这种情况下


使用
os.path.sep
,它返回os依赖路径分隔符(
\\\
在windows上和
/
在linux上)


使用
os.path.sep
,它返回os依赖路径分隔符(
\\\
在windows上和
/
在linux上)


您收到的错误消息是什么?我认为该消息的意思是“系统找不到指定的文件”。在您指定字符串的地方,我会使用原始字符串,并且您确定在您尝试打开该文件的地方存在该文件吗?当您执行
importos
后接
os.listdir(此处为您的目录路径)时,您能在python shell中看到它吗。文件是否显示在返回的列表中?
t/admin/salidas/pdf/
来自何处?这必须是代码中的路径吗?标记。。。这是我正在执行的当前URL(这是一个django项目)您收到的错误消息是什么?我认为该消息的意思是“系统找不到指定的文件”。在您指定字符串的地方,我会使用原始字符串,并且您确定您试图打开该文件的地方存在该文件吗?当您执行
importos
后接
os.listdir(此处为您的目录路径)时,您能在python shell中看到它吗。文件是否显示在返回的列表中?
t/admin/salidas/pdf/
来自何处?这必须是代码中的路径吗?标记。。。这是我正在执行的当前URL(这是一个django项目)@juanefren检查这个:@juanefren检查这个: