查看文件是否存在并打印它

时间:2018-05-13 20:49:59

标签: python io

因此,我尝试创建一种可以搜索文件并将其打印出来的方法。

def search():
    searched = input("... ")
    with open(searched + ".py", "r") as my_file:
        print(my_file)
search()

但控制台打印出< _io.TextIOWrapper name =' RandomPrac.py'模式=' R'编码=' UTF-8'> 这是什么意思?

2 个答案:

答案 0 :(得分:3)

您打印my_file变量,其类型为_io.TextIOWrapper。你真正需要的是

print(my_file.read())

答案 1 :(得分:3)

正如Ali Yilmaz's answer已经很好地解释的那样,您正在打印文件对象,而不是该文件的内容。

对于较小的文件,只需read()文件即可将内容作为字符串获取,并打印出来,如同他的回答一样。而且,由于您正在搜索*.py文件,因此您几乎肯定会有小文件。

但是如果文件可能是巨大的,那么最好循环它并在阅读时打印每一行:

for line in my_file:
    print(line, end='')

或者,如果你想更简洁但可能太聪明:

print(*my_file, sep='')