Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.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_Python - Fatal编程技术网

检查文本文件是否为空Python

检查文本文件是否为空Python,python,Python,有没有一种方法可以在不使用操作系统的情况下检查Python中的文本文件是否为空 到目前为止我都试过了 x = open("friends.txt") friendsfile = x.readlines() if friendsfile == None 但我认为这不是正确的方法 不确定为什么不使用os,但我想如果您真的需要,可以打开文件并获取第一个字符 with open('friends.txt') as friendsfile: first = friendsfile.read(

有没有一种方法可以在不使用操作系统的情况下检查Python中的文本文件是否为空

到目前为止我都试过了

x = open("friends.txt")
friendsfile = x.readlines()

if friendsfile == None 

但我认为这不是正确的方法

不确定为什么不使用
os
,但我想如果您真的需要,可以打开文件并获取第一个字符

with open('friends.txt') as friendsfile:
    first = friendsfile.read(1)
    if not first:
        print('friendsfile is empty')
    else:
        #do something

为什么你不能使用操作系统?解决方案在@Andy给出的链接中。重复已确认。不,我认为在该链接上没有解决方案,请注意他不想使用操作系统。打开文件检查是否为空需要占用大量内存,如果您只想检查文件是否为空。如果文件已经打开,那么您可以使用Andy提供的链接中的答案。请注意,如果您将
如果friendsfile==None
更改为
如果friendsfile=[]
[]
是空列表,
readlines
返回列表),则您的解决方案可能会变得正确或者如果不是friendsfile(因为
[]
被视为false)。但是给出的答案肯定更有效。将open('friends.txt')作为friendsfile:if friendsfile=[]:print('friendsfile为空')否则:#做点什么。。。。。。。给你同样的答案,只需一行就可以了。如果第一行只是一个新行,而文件中没有其他内容。它算作一个true@AbdullahSaid应该这样吗?