我正在尝试检查特定目录路径是否存在。
下面是我的代码
temp_path = '\\diwali\NSID-HYD-01\college'
meta_path = os.path.realpath(temp_path)
print(os.path.exists(meta_path))
当我尝试执行此操作时,它会抛出错误,如下所示
temp_path = '\\diwali\NSID-HYD-01\college'
# ^
错误
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 8-9: malformed \N character escape
帮我解决这个问题。
答案 0 :(得分:2)
Python将字符串内的反斜杠(\
)解释为转义码的前导字符。例如,\n
是换行符。
如果您希望将它们视为简单的反斜杠,请在字符串前添加r
,如下所示:
temp_path = r'\\diwali\NSID-HYD-01\college'
答案 1 :(得分:0)
另一种方法是在\\
之前使用两个反斜杠N
,如下所示:
temp_path = '\\diwali\\NSID-HYD-01\college'
如果您是从UI获取的(正如您在评论中提到的那样),则可以将\
替换为\\
:
temp_path = '\\diwali\NSID-HYD-01\college'.replace("\\", "\\\\")
# '\\diwali\\NSID-HYD-01\\college'
答案 2 :(得分:0)
你最好的选择是逃避所有的反斜杠:
path_string.replace('\\', '\\\\')
这将用两个反斜杠替换单个反斜杠(因为单个\将逃脱你必须逃脱的引用,这就是为什么它的两个和两个反斜杠)