python';s file.read()不&\x27;t返回文本文件中的字符串

python';s file.read()不&\x27;t返回文本文件中的字符串,python,python-3.x,file,Python,Python 3.x,File,我有一个程序,在这个程序中,我需要将文本文件中的字符串加载到变量中。它看起来像这样(我有代码确保给定路径中的文件在此之前存在): 当我运行代码时,它返回以下内容: String is not empty, here's what is said: , here's what was saved: 当我打开文本文件时,我可以清楚地看到它的内容不是空的,它是一个普通的文本字符串。这意味着由于某种原因,read()函数无法读取明显存在的字符串。我已经用我的技术水平完成了所有可能的bug搜索,确保我

我有一个程序,在这个程序中,我需要将文本文件中的字符串加载到变量中。它看起来像这样(我有代码确保给定路径中的文件在此之前存在):

当我运行代码时,它返回以下内容:

String is not empty, here's what is said: , here's what was saved: 

当我打开文本文件时,我可以清楚地看到它的内容不是空的,它是一个普通的文本字符串。这意味着由于某种原因,read()函数无法读取明显存在的字符串。我已经用我的技术水平完成了所有可能的bug搜索,确保我所有的路径和内容都是正确的,没有任何拼写错误,并且搜索了许多堆栈溢出帖子,其中没有一篇包含我问题的解决方案。是什么导致了这个问题?如果我没有提到代码中的一个重要部分,请向我索要。

第一次调用read已经消耗了整个字符串并将其丢弃,因为它只在If语句中使用。只调用
file.read()
一次并将字符串保存到变量:

file=open(“文件路径”,“r”)
s=file.read()
如果s!="":
print(“字符串不是空的,下面是它所说的:“+s”)

第一次运行file.read()时,光标已经到达文件的末尾。对于给定的文件对象,您只能调用read一次(因为它在C中是如何工作的)@downloadp批萨是正确的。此外,您正在尝试读取文件两次。改为使用open()的用户。谢谢,我已经在评论员的帮助下解决了这个问题,我在第二次读取()之前使用了file.seek(0),效果很好。
String is not empty, here's what is said: , here's what was saved: