2024-03-28 18:52:07 发布
网友
所以我尝试创建一个方法来搜索文件并打印出来。你知道吗
def search(): searched = input("... ") with open(searched + ".py", "r") as my_file: print(my_file) search()
但控制台会打印出来<_io.TEXTIO包装器name='随机实践'mode='r'编码='UTF-8'>; 这是什么意思?你知道吗
打印my_file变量,它的类型是_io.TextIOWrapper。你真正需要的是
my_file
_io.TextIOWrapper
print(my_file.read())
正如Ali Yilmaz's answer已经很好地解释的那样,您打印的是file对象,而不是该文件的内容。你知道吗
对于小型文件,只需read()将文件中的内容作为字符串,然后打印出来,就像他的答案一样。而且,因为您正在搜索*.py文件,所以几乎可以肯定您确实有一些小文件。你知道吗
read()
*.py
但是,如果文件可能非常庞大,最好在阅读时循环并打印每一行:
for line in my_file: print(line, end='')
或者,如果你想更简洁但可能太聪明:
print(*my_file, sep='')
打印
my_file
变量,它的类型是_io.TextIOWrapper
。你真正需要的是正如Ali Yilmaz's answer已经很好地解释的那样,您打印的是file对象,而不是该文件的内容。你知道吗
对于小型文件,只需
read()
将文件中的内容作为字符串,然后打印出来,就像他的答案一样。而且,因为您正在搜索*.py
文件,所以几乎可以肯定您确实有一些小文件。你知道吗但是,如果文件可能非常庞大,最好在阅读时循环并打印每一行:
或者,如果你想更简洁但可能太聪明:
相关问题 更多 >
编程相关推荐