this code works fine when I put the path of the file myself. but when I want to get it from users raw_input() it doesn't work. what can I do?
import string
import random
print "enter number between 6 and 20"
n = raw_input()
print "enter pathway of file"
p = raw_input()
print "creating a new text file"
new_file = open(p, "w") #the error on this line
m = int(n)
print random.choice(string.ascii_lowercase)
for i in range(0,m):
for j in range(0,m):
new_file.write(random.choice(string.ascii_lowercase))
new_file.write("\n")
解决方案
From the error message you quoted, it looks like you're adding doublequotes to your user input and escaping the backslashes. Don't do that.
Instead of entering
"c:\\Users \\USER\\Desktop\\bar.txt"
at the prompt, enter:
C:\users\USER\Desktop\bar.txt
博客讨论了Python中手动输入文件路径代码正常,但使用raw_input()获取用户输入的文件路径时出错的问题。给出的解决方案是,用户输入路径时不要添加双引号和转义反斜杠,直接输入路径即可。

被折叠的 条评论
为什么被折叠?



