使用双反斜杠时获取用户路径 (Python)

当路径有双反斜杠时,我正在寻找一种方法来获取路径中的当前用户名。这是我的示例代码:


import getpass

import pickle


no_user_path = pickle.load(open("C:\\Users\\{}\\Desktop\\data.dat", "rb"))

path = no_user_path.format(getpass.getuser())


print(path)

在这里,我尝试在使用 pickle 模块时导航到路径,但出现此错误:


Traceback (most recent call last):

  File "C:/Users/mikur/Desktop/help.py", line 4, in <module>

    no_user_path = pickle.load(open("C:\\Users\\{}\\Desktop\\data.dat", "rb"))

FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\{}\\Desktop\\data.dat'

>>> 

正如您所看到的,它实际上并没有{}用用户名替换,为什么不这样做呢?它只使用一个反斜杠就可以正常工作,但这是一个转义字符,会导致pickle.


我能做些什么来解决这个问题?


倚天杖
浏览 153回答 1
1回答

慕虎7371278

您需要在调用之前格式化字符串 pickle.load()import getpassimport pickledata = "C:\\Users\\{}\\Desktop\\data.dat".format(getpass.getuser())no_user_path = pickle.load(open(data, "rb"))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python