我在打开names.txt
文件时遇到问题。我已经检查过我在正确的目录中。以下是我的代码:
import os
print(os.getcwd())
def alpha_sort():
infile = open('names', 'r')
string = infile.read()
string = string.replace('"','')
name_list = string.split(',')
name_list.sort()
infile.close()
return 0
alpha_sort()
我得到的错误:
FileNotFoundError:[Errno 2]没有这样的文件或目录:'names'
关于我做错的任何想法?
答案 0 :(得分:3)
您在问题正文中提到该文件是" names.txt"但是您的代码显示您尝试打开名为" name"的文件。 (没有" .txt"扩展名)。 (扩展名是文件名的一部分。)
请改为尝试:
infile = open('names.txt', 'r')
答案 1 :(得分:2)
作为旁注,请确保在打开文件时使用通用模式,因为windows和mac / unix具有不同的回车表示形式(/ r / n vs / n等) 。通用模式让python来处理这个问题,所以每当你需要读取文件时使用它通常是个好主意。 (编辑 - 应该是:文本文件,感谢卡梅隆)
所以代码看起来就像这样
infile = open( 'names.txt', 'rU' ) #capital U indicated to open the file in universal mode
答案 2 :(得分:1)
这不能解决该问题,但您可以考虑在打开文件时使用with
:
with open('names', 'r') as infile:
string = infile.read()
string = string.replace('"','')
name_list = string.split(',')
name_list.sort()
return 0
这会为您关闭文件并处理异常。