以“结束输入();如果。。。不是没有”;使用Python3.6
我对Python非常陌生。我正在尝试制作一个待办事项列表(一个txt文件),然后我可以向其中添加内容。当我输入完东西后,我正在努力寻找正确的方法让脚本停止 我尝试了不同的方法来生成while循环和if语句,但是脚本总是要么停止,要么永远继续 我认为问题可能在于我将“notnone”赋值给一个变化的变量,但我不确定。这是我的代码:以“结束输入();如果。。。不是没有”;使用Python3.6,python,python-3.x,if-statement,input,nonetype,Python,Python 3.x,If Statement,Input,Nonetype,我对Python非常陌生。我正在尝试制作一个待办事项列表(一个txt文件),然后我可以向其中添加内容。当我输入完东西后,我正在努力寻找正确的方法让脚本停止 我尝试了不同的方法来生成while循环和if语句,但是脚本总是要么停止,要么永远继续 我认为问题可能在于我将“notnone”赋值给一个变化的变量,但我不确定。这是我的代码: import time from datetime import date todo_file = open(f"ToDos_{date.today()}", 'a'
import time
from datetime import date
todo_file = open(f"ToDos_{date.today()}", 'a')
todo_file.write(input("What do you need to do tomorrow? "))
todo_file.write("\n")
todo = input("What else? ")
if todo is not None:
todo_file.write(todo)
todo_file.write("\n")
else:
pass
todo_file.close()
对我如何写这篇文章的任何其他批评都是非常受欢迎的。多亏了@abccd和@Christian,问题解决了。当然,我需要一段时间的循环。我不会再把它们混在一起了。代码还缺少输入提示。它现在可以工作了,如下所示:
import time
from datetime import date
todo_file = open(f"ToDos_{date.today()}", 'a')
todo_file.write(input("What do you need to do tomorrow? "))
todo_file.write("\n")
todo = input("What else? ")
while todo != "":
todo_file.write(todo)
todo_file.write("\n")
todo = input("What else? ")
todo_file.close()
todo
永远不能是None
,因为input()
在Python 3中总是返回字符串,当您不提供任何文本输入时,将返回空字符串。如果todo!=“”:谢谢,这很有道理。在第二次提示后(在“还有什么?”)脚本仍然直接停止,不允许我添加更多项目。如果没有todo,则@abccd:更好。您需要一个循环@Samia00。对于如何构造循环,您有多种选择,但最简单的是while循环,它只在todo
为空时进行测试。非常感谢,@Christian。我现在用这些信息回答了我自己的问题,我希望这是正确的方法。我只是偶然发现了一种更简单的方法来执行while循环:while todo:
就足够了,因为它意味着“while todo不是空的”。