在python调用中拒绝访问

时间:2015-02-27 02:45:48

标签: python svn call

我正在尝试通过Python脚本忽略SVN。

我正在尝试运行如下命令:

call(['"C:\Program Files\TortoiseSVN\bin\svn.exe" propset svn:ignore "C:\dir\file.dcu" "C:\dir"'])

以下是我收到的Python错误消息:

error

它说我没有办法做到这一点。但是,当我尝试在CMD.EXE shell中运行此命令时,一切正常。


修改

也许这是一个线索,也许我无法逃避这样的角色

quotes

1 个答案:

答案 0 :(得分:1)

问题是您没有正确处理转义序列。 \b表示退格符,\f表示换页符:

>>> '\b'
'\x08'
>>> '\f'
'\x0c'
>>>

这会使您的路径无效。要解决此问题,只需使用raw-string

即可
call([r'"C:\Program Files\TortoiseSVN\bin\svn.exe" propset svn:ignore "C:\dir\file.dcu" "C:\dir"'])

通过在字符串文字前加r前缀,我们告诉Python不要解释转义序列。