我开发了一个简单的bubblesort算法,它在变量myList = say,[1,4,2,3,5]时有效,但是我需要从外部文本文件中加载文本。这就是我所拥有的。
#New Bubble sort
f = open('Users/Luke/Dropbox/Programming/numbers.txt', 'r')
my_list = f.read()
print(my_list)
length = len(my_list)
for i in range(length):
for j in range(length-1):
if my_list[j] > my_list[j+1]:
my_list[j], my_list[j+1] = my_list[j+1], my_list[j]
print(my_list)
f.close()
这让我回复:
FileNotFoundError: [Errno 2] No such file or directory: 'Users/Luke/Dropbox/Programming/numbers.txt'
目录确实存在,我尝试了不同的变体(后退/前斜线,包括'C:/')等。
答案 0 :(得分:1)
你先错了'/'
/Users/Luke/Dropbox/Programming/numbers.txt
答案 1 :(得分:0)
你需要使用反斜杠而不是正斜杠:
file = open('C:\\Users\\Luke\\Dropbox\\Programming\\numbers.txt' ,'r')
由于反斜杠是一个转义字符,你需要添加其中两个(第一个逃脱第二个)
答案 2 :(得分:0)
您可能需要以下内容:
'C:\\Users\\Luke\\Dropbox\\Programming\\numbers.txt'
或者
r'C:\Users\Luke\Dropbox\Programming\numbers.txt'
记住'\'
是Python中的转义字符。
答案 3 :(得分:0)
获取文件的绝对权威路径:
转到文件, ctrl + 右键单击,然后选择“复制为路径” 从菜单中。
或者打开文件属性并获取其文件夹名称,然后是您 可以将其名称组合在一起以获得完整路径。
或者您可以创建一个快捷方式,然后查看该属性 查看目标位置的快捷方式。
或者您可以将文件拖到打开的控制台中,然后查看显示的路径 起来。
换句话说,这不应该是确定......
的问题要在您的程序中处理此问题,以防输入,请检查os.path.exists(path)
答案 4 :(得分:0)
你应该使用os.path 具体来说:os.path.join 此函数为您处理路径分隔符,因此它将始终独立于os。
像:
从os导入路径
my_path = path.join('用户','卢克','Dropbox','编程','numbers.txt')
有关详细信息,请参阅: http://docs.python.org/2/library/os.path.html