无法理解打开文本文件的错误

问题描述 投票:-1回答:2

我正在使用日志记录系统,在将数据从文本文件传输到变量时遇到一些麻烦。

database = open('C:\\Users\\user\\Desktop\\text.txt', 'r')
print(database)

当我尝试执行此操作时,会发生这种情况。这是什么意思?

<_ io.textiowrapper users user desktop text.txt>

python file text-files
2个回答
3
投票

您需要从文件中读取数据,因此需要使用read方法。另外,请用with打开文件,该文件将自动关闭,因此这是完成您想要实现的正确方法。

再次使用with打开文件,因为它会自动关闭文件,所以我们使用它,然后我们用read()方法读取文件数据,最后我们打印文件数据。

示例:

with open('C:\\Users\\user\\Desktop\\text.txt', 'r') as f:
    data = f.read()
    print(data)
    # The file is closed automatically

还有一件事,您可以使用os模块采用桌面路径,而不是每次都写您的桌面路径,而是采用所有人桌面路径。

我们正在使用os.path.join()将两个字符串连接在一起,因此这将在它们之间添加一个斜杠(/),然后我们使用User Profile路径(C:\Users\USERNAME

因此,如果我们正在打印desktopPath变量,

我们正在得到此结果:C:\Users\USERNAME\Desktop

import os

# desktop Path
desktopPath = os.path.join(os.environ['USERPROFILE'], 'Desktop')

with open(os.path.join(desktopPath, 'test.txt'), 'r') as f:
    data = f.read()
    print(data)

0
投票

您正在打印包含文件的python对象。相反,您可能希望打印文件的行。

尝试一下:print(database.readlines())

© www.soinside.com 2019 - 2024. All rights reserved.