Python 如何将_io.TextIOWrapper转换为字符串?

Python 如何将_io.TextIOWrapper转换为字符串?,python,string,file,Python,String,File,我使用下面的代码阅读文本格式 f = open("document.txt", "r+", encoding='utf-8-sig') f.read() 但是f的类型是\u io.TextIOWrapper。但我需要输入字符串来继续 请帮助我将\u io.TextIOWrapper转换为字符串。这不是一个非常优雅的解决方案,但对我来说很有用 def extractPath(innie): iggy = str(innie) getrid

我使用下面的代码阅读文本格式

f = open("document.txt", "r+", encoding='utf-8-sig')
f.read()
但是
f
的类型是
\u io.TextIOWrapper
。但我需要输入字符串来继续


请帮助我将
\u io.TextIOWrapper
转换为字符串。

这不是一个非常优雅的解决方案,但对我来说很有用

def extractPath(innie):
    iggy = str(innie)

    getridofme ="<_io.TextIOWrapper name='"
    getridofmetoo ="' mode='r' encoding='UTF-8'>"

    iggy = iggy.replace(getridofme, "")
    iggy = iggy.replace(getridofmetoo, "")
    #iggy.trim()

    print(iggy)

    return iggy
def提取路径(innie):
iggy=str(innie)
getridofme=“”
iggy=iggy.replace(getridofme,“”)
iggy=iggy.replace(getridofmeto,“”)
#iggy.trim()
印刷品(iggy)
回程iggy

您需要使用
f.read()的输出。

我认为您的困惑在于,只要调用其方法
.read()
,就会将
f
转换为字符串,但事实并非如此。我认为内置软件甚至不可能做到这一点

作为参考,
\u io.TextIOWrapper
是打开的文本文件的类。看


顺便说一下,最佳做法是使用
with
-语句打开文件:

with open("document.txt", "r", encoding='utf-8-sig') as f:
    string = f.read()

请阅读Python文档中提供的教程。您需要的是
txt=f.read()
。欢迎使用堆栈溢出!请拿着这本书读一读。这是超级复杂的。您只需执行innie.name。但这不是OP的要求;他们在问如何读取文件。
with open("document.txt", "r", encoding='utf-8-sig') as f:
    string = f.read()