2011-03-13 84 views
1

此v2函數在v3中運行時給出了「NameError:全局名稱」文件「未定義」錯誤。將Python v2函數轉換爲v3

def from_file(filename, sep='\n'): 
    "Parse a file into a list of strings, separated by sep." 
    return file(filename).read().strip().split(sep) 

有人可以提供一個v3版本嗎?

+4

應該用'open(filename)作爲f:return f.read()。strip()。split()'這樣文件才能正常關閉。另外,您可能需要考慮這是否有必要,或者如果基於標準的基於行的迭代(使用大大減少的內存)足夠滿足您的需求。 – delnan 2011-03-13 08:23:28

回答

7

更改file致電open