我有一个变量“ title”,该变量是我从网站页面上抓取的,想要用作文件名。 我尝试了许多组合都无济于事。我的代码有什么问题?
f1 = open(r'E:\Dp\Python\Yt\' + str(title) + '.txt', 'w')
谢谢
答案 0 :(得分:2)
问题中突出显示的语法应该可以帮助您。 \'
不会终止字符串-它是转义的单跳'
。
正如this old answer所示,实际上不可能用反斜杠结束原始字符串。最好的选择是使用字符串格式
# old-style string interpolation
open((r'E:\Dp\Python\Yt\%s.txt' % title), 'w')
# or str.format, which is VASTLY preferred in any modern Python
open(r'E:\Dp\Python\Yt\{}.txt'.format(title), 'w')
# or, in Python 3.6+, the new-hotness of f-strings
open(rf'E:\Dp\Python\Yt\{title}.txt', 'w')
否则,添加更多的字符串连接,这似乎要差得多。
open(r'E:\Dp\Python\Yt' + "\\" + str(title) + '.txt', 'w')
答案 1 :(得分:0)
需要逃避所有字符,否则斜线号就会出现,否则它们将转义后面的字符。
f1 = open(r'E:\\Dp\\Python\\Yt\\' + str(title) + '.txt', 'w')