Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 创建列表后关闭文件>;text=open(";path/file.ext).read().split()_Python_List_File Io_Split - Fatal编程技术网

Python 创建列表后关闭文件>;text=open(";path/file.ext).read().split()

Python 创建列表后关闭文件>;text=open(";path/file.ext).read().split(),python,list,file-io,split,Python,List,File Io,Split,我在程序中使用了以下行 text = open("C:\Python27\Scripts\wordlist.txt", "r").read().split() 这将创建一个名为text的列表。我的问题是,是否还有一个打开的文件需要关闭?或者在这种情况下是不是没有必要,或者可能不是真的可能。。。我试图通过locals()和globals()查找任何“file”类型的对象,但没有。出于某种原因,这样一行代码会被认为是不好的做法吗?从表面上看,对我来说,这似乎相当方便。(wordlist.txt是一

我在程序中使用了以下行

text = open("C:\Python27\Scripts\wordlist.txt", "r").read().split()

这将创建一个名为text的列表。我的问题是,是否还有一个打开的文件需要关闭?或者在这种情况下是不是没有必要,或者可能不是真的可能。。。我试图通过locals()和globals()查找任何“file”类型的对象,但没有。出于某种原因,这样一行代码会被认为是不好的做法吗?从表面上看,对我来说,这似乎相当方便。(wordlist.txt是一本很长的书)

应该关闭它,但请注意,语句更具python风格,更易于使用,因为即使出现错误,它也保证关闭文件:

with open("C:\Python27\Scripts\wordlist.txt") as myfile: # Second argument not needed. 'r' is by default
    text = myfile.read().split()

应该关闭它,但请注意,语句更具python风格,更易于使用,因为即使出现错误,它也保证关闭文件:

with open("C:\Python27\Scripts\wordlist.txt") as myfile: # Second argument not needed. 'r' is by default
    text = myfile.read().split()

是的,我会考虑这种不良做法。处理文件时使用的最佳实践是使用。然后,代码看起来像这样

with open("C:\Python27\Scripts\wordlist.txt", "r") as textfile:
    result = textfile.read.split()

隐式使用with语句意味着文件将在离开作用域时关闭,因此您不必担心它。阅读上面的链接了解更多关于它如何工作的信息
with open("C:\Python27\Scripts\wordlist.txt", "r") as textfile:
    result = textfile.read.split()
隐式使用with语句意味着文件将在离开作用域时关闭,因此您不必担心它。阅读上面的链接了解更多关于它如何工作的信息