Python &引用;ValueError:对关闭的文件执行I/O操作;嵌套循环

Python &引用;ValueError:对关闭的文件执行I/O操作;嵌套循环,python,python-3.x,Python,Python 3.x,我正在尝试创建一个链接刮板迄今为止的工作。我只是在复制多行时遇到问题,然后它从未停止插入这些行。所以我想把多行分割成单行,但是在创建了for循环(它在多行上迭代)之后,我总是会得到这个错误:ValueError:I/O操作 import pyperclip import datetime while True: with open("text.txt", "r+") as textfile: text = str(pyperclip.paste())

我正在尝试创建一个链接刮板迄今为止的工作。我只是在复制多行时遇到问题,然后它从未停止插入这些行。所以我想把多行分割成单行,但是在创建了for循环(它在多行上迭代)之后,我总是会得到这个错误:ValueError:I/O操作

import pyperclip
import datetime


while True:
    with open("text.txt", "r+") as textfile:
        text = str(pyperclip.paste())
        liste = text.split("\r\n")

        for element in liste:
            for line in textfile:

                if element in line:
                    break
            else: 
                now = datetime.datetime.now()
                textfile.write(str(now.day) + "." + str(now.month) + "." +
                               str(now.year) + " " + str(now. hour) + ":" +
                               str(now.minute) + " | ")
                textfile.write(element + "\n")
                textfile.close()
                print(element)

读取
错误
!它说:

ValueError:对关闭的文件执行I/O操作

很明显,您正试图对已关闭的
文件
执行某些操作!您正在这一行关闭它:

textfile.close()

然后继续执行
循环
,并尝试对其执行更多操作。因此,要解决这个问题,只需删除该
,并且
文件
将由于
with
语句而被关闭。

呃,可能是因为你关闭了它,所以会出现错误:
textfile.close()
?不要在循环中调用
textfile.close()
。哦,是的,你是对的,谢谢lot@cᴏʟᴅsᴘᴇᴇᴅ 出于兴趣,根据你在网站上的经验,为什么这个问题应该被否决?仅仅因为它很简单或者…@JoeIddon我没有投反对票,但是这个问题可以通过更明智一点来避免。。。1) 阅读文档,了解close的功能,如果不应该使用它,则不使用它;或者2)使用调试器,找出问题所在;或者3)进行研究,我保证这是以前问过的问题。