我在翻译中做了这一切......
loc1 = '/council/council1'
file1 = open(loc1, 'r')
此时我可以执行file1.read()并将文件内容作为字符串输出到标准输出
但如果我加上这个..
string1 = file1.read()
字符串1回来了空..我不知道我可能做错了什么。这似乎是最基本的东西!
如果我再次输入file1.read(),则输出到标准输出只是一个空字符串。所以,当我尝试使用file1.read()
创建一个字符串时,不知何故我丢失了我的文件答案 0 :(得分:5)
您只能阅读一次文件。之后,当前的读取位置位于文件的末尾。
如果在重新阅读之前添加file1.seek(0)
,则应该能够再次阅读内容。然而,更好的方法是第一次读入字符串然后将其保存在内存中:
loc1 = '/council/council1'
file1 = open(loc1, 'r')
string1 = file1.read()
print string1
答案 1 :(得分:2)
你不会丢失它,只需将偏移指针移动到文件末尾并尝试读取更多数据。由于它是文件的末尾,因此没有更多数据可用,并且您将获得空字符串。尝试重新打开文件或寻求零位置:
f.read()
f.seek(0)
f.read()
答案 2 :(得分:0)
使用-kTableHeaderHeight
是最好的语法,因为它在使用后关闭了与文件的连接(因为python 2.5):
with
答案 3 :(得分:-1)
确保您的位置正确无误。您实际上在根目录(/council
)下有一个名为/
的目录吗?也可以使用os.path.join()
创建路径
loc1 = os.path.join("/path","dir1","dir2")