我正在研究Python,现在我自己做一个小项目。第二个函数中的for循环未遍及整个代码。当我运行代码时,我只会得到字典的最后一个元素。
为了解决该问题,我尝试使用while
,但得到了相同的答案。
def enter_task():
global num_task
num_task = int(input("Please, enter number of tasks: "))
calendar = {}
for i in range(0, num_task):
global task
task=input("Please, enter task: ")
set_time = input("Please, enter time for {}: ". format(task))
calendar[task] = set_time
print(calendar)
def conclusion():
count = 0
for i in range(0, num_task):
is_done = input("Is task {} completed? Enter Yes/No: ".format(task))
if is_done == "yes":
count += 1
return count
print('Nicely done. {} of {} tasks were completed today'. format(count, num_task))
当我调用结论时,input is_done
仅显示一次,并且该任务等于我在函数enter_task
中键入的最后一个任务。此外,count
不在计数,也不打印对帐单。 input is_done
的出现次数应与nun_task
相同,并且每次都有不同的任务。