我有一项任务,我需要根据文本文件运行某些函数来计算某些文本。我能够自己做的第一组指令不是基于用户的,它只是文本文件(tasks.txt)中文本项的一般计数。我现在遇到的问题是如何仅基于用户从文本文件中计算某些内容。当前只有一项任务,但如果我分配了多个任务并且分配给不同的用户,我将如何仅为该特定用户进行计算?任何建议将不胜感激。
文本文件是:(tasks.txt)
分配给任务的用户:
鲍比
任务名称:
飞
任务描述:
飞向月球
任务截止日期:2020-04-01
分配日期:2020-03-03
任务完成:
不
任务编号:
1
第一组任务:(已完成)
已生成的任务总数
已完成任务的总数。
未完成任务的总数。
尚未完成和逾期的任务总数。
未完成任务的百分比。
逾期任务的百分比。
第二组任务(基于用户):
分配给该用户的任务总数。
分配给该用户的任务总数的百分比是多少?
已完成分配给该用户的任务的百分比是多少?
必须完成分配给该用户的任务的百分比是多少?
分配给该用户的任务中有多少百分比尚未完成且已过期?
到目前为止我的代码:
data2 = open('tasks.txt').read()
count3 = data2.count('Task Title')
count4 = data2.count('Yes')
count5 = data2.count('No')
with open("tasks.txt", "r")as f5:
today = datetime.datetime.today()
overdue = 0
for line in f5:
if not line.startswith('Task Due Date'): continue
field, value = line.split(':')
if field == 'Task Due Date':
if datetime.datetime.strptime(value.strip(), '%Y-%m-%d') < today:
overdue = overdue + 1
ab = (overdue/count3)*100
abb = (count5/count3)*100
print("Total number of tasks: " + str(count3) + "\nTotal number of completed tasks: " + str(count4) + "\nTotal number of incomplete tasks: " + str(count5) + "\n" +
"The percentage of overdue tasks is: " + str(ab) + "%" + "\n" + "The percentage of incomplete jobs is: " + str(abb) + "%")
num_lines = sum(1 for line in open('user.txt'))
print("The number of registered users is: " + str(num_lines) + "\n")
data3 = open('tasks.txt','r').read()
usr_check = input("Please input a user name to write details of that user.\n")
count6 = data3.count(usr_check)
count7 = (count6/count3)*100
print("The user " + str(usr_check) + " has total tasks of: " + str(count6) + "\n" + str(usr_check)+ "'s" + " " + "percentage of total tasks is: "
+ str(count7) + "%")