在Python 3.6.5中,这可以正常工作:
command = "ffmpeg -i {0} -vsync 0 -q:v 2 -vf select=\"eq(pict_type\,PICT_TYPE_I)\" -r 30 {1}/frame%03d.jpg".format(file_path, output_path)
显然,这是一条很长的线,所以我使用了连续行:
command = "ffmpeg -i {0} -vsync 0 -q:v 2 -vf select=\"eq(pict_type\,PICT_TYPE_I)\" -r 30 {1}/frame%03d.jpg"\
.format(file_path, output_path)
但是,在启动时,这会生成DeprecationWarning:
DeprecationWarning: invalid escape sequence \,
command = "ffmpeg -i {0} -vsync 0 -q:v 2 -vf select=\"eq(pict_type\,PICT_TYPE_I)\" -r 30 {1}/frame%03d.jpg"\
但是,这不是:
command = "foo {0} bar {1}"\
.format(file_path, output_path)
在项目的其余部分中,我都使用连续行。没有结果DeprecationWarning。像这样的其他问题都提到了此警告,但是对于我可以找到的连续字符,都没有提及。
是什么导致此警告,为什么它仅在这种非常狭窄的情况下出现?
编辑:这与行延续无关。该错误仅在部分时间内显示给我的原因与Django的错误有关runserver。第一次runserver运行,不报告错误。但是,如果更改导致重新加载,则在重新加载器运行时会报告错误。
相关分类