显示编号列表
Display numbered list
我的最后一个问题已解决,但我现在还需要打印更多内容。我下面的代码当前打印以下内容。
输入
# Add task to list
def add(todo, x, y):
todo[x] = y
# View task
def view2(x):
for key, val in x.items():
print("{0} - {1}".format(key, val))
if sel == '1': #add task
name = input("Please provide a task name: ")
prio = input("Please select prioty level (High | Medium | Low): ")
add(todo, name, prio)
exit
elif sel == '3': #print todo list
view2(todo)
exit
输出
test 1 - high
test 2 - med
test 3 - low
但我需要以下输出
1 - test 1 - high
2 - test 2 - med
3 - test 3 - low
下一段代码将获取列表项的编号并从列表中删除该项目,这就是为什么我需要如上所示的编号列表。
提前致谢!
这可能像
# View task
def view2(x):
n_order = 0
for key, val in x.items():
n_order += 1
print("{0} - {1} - {2}".format(n_order, key, val))
从列表中删除项目
这是通过选择 sel
作为 2
来完成的。
- 将任务编号转换为索引
- 验证任务索引有效
- 使用 del
按索引从列表中删除项目
def remove(todo, number):
index = number - 1
if not(0 < index < len(todo)):
print('Invalid task number')
else:
del todo[index]
查看任务列表
Enumerate 超过 todo_list
,这会让你们都知道当前任务索引及其值:
# View task
def view2(todo_list):
for index, todo in enumerate(todo_list, start=1):
for key in todo.keys():
print(f'{index} - {key} - {todo[key]}')
完整代码
# Add task to list
def add(todo, x, y):
todo[x] = y
def remove(todo, number):
index = number - 1
if not(0 < index < len(todo)):
print('Invalid task number')
else:
del todo[index]
# View task
def view2(todo_list):
for index, todo in enumerate(todo_list, start=1):
for key in todo.keys():
print(f'{index} - {key} - {todo[key]}')
todo = [{'test 1': 'high'}, {'test 2': 'med'}, {'test 3': 'low'}]
while True:
sel = input("Please enter command (1=Add, 2=Delete, 3=View): \n")
if sel == '1': #add task
name = input("Please provide a task name: ")
prio = input("Please select prioty level (High | Medium | Low): ")
add(todo, name, prio)
elif sel == '2':
number = int(input("Please provide a task number: "))
remove(todo, number)
elif sel == '3': #print todo list
view2(todo)
else:
break
输出:
Please enter command (1=Add, 2=Delete, 3=View):
3
1 - test 1 - high
2 - test 2 - med
3 - test 3 - low
Please enter command (1=Add, 2=Delete, 3=View):
2
Please provide a task number: 2
Please enter command (1=Add, 2=Delete, 3=View):
3
1 - test 1 - high
2 - test 3 - low
我的最后一个问题已解决,但我现在还需要打印更多内容。我下面的代码当前打印以下内容。
输入
# Add task to list
def add(todo, x, y):
todo[x] = y
# View task
def view2(x):
for key, val in x.items():
print("{0} - {1}".format(key, val))
if sel == '1': #add task
name = input("Please provide a task name: ")
prio = input("Please select prioty level (High | Medium | Low): ")
add(todo, name, prio)
exit
elif sel == '3': #print todo list
view2(todo)
exit
输出
test 1 - high
test 2 - med
test 3 - low
但我需要以下输出
1 - test 1 - high
2 - test 2 - med
3 - test 3 - low
下一段代码将获取列表项的编号并从列表中删除该项目,这就是为什么我需要如上所示的编号列表。
提前致谢!
这可能像
# View task
def view2(x):
n_order = 0
for key, val in x.items():
n_order += 1
print("{0} - {1} - {2}".format(n_order, key, val))
从列表中删除项目
这是通过选择 sel
作为 2
来完成的。
- 将任务编号转换为索引
- 验证任务索引有效
- 使用 del 按索引从列表中删除项目
def remove(todo, number):
index = number - 1
if not(0 < index < len(todo)):
print('Invalid task number')
else:
del todo[index]
查看任务列表
Enumerate 超过 todo_list
,这会让你们都知道当前任务索引及其值:
# View task
def view2(todo_list):
for index, todo in enumerate(todo_list, start=1):
for key in todo.keys():
print(f'{index} - {key} - {todo[key]}')
完整代码
# Add task to list
def add(todo, x, y):
todo[x] = y
def remove(todo, number):
index = number - 1
if not(0 < index < len(todo)):
print('Invalid task number')
else:
del todo[index]
# View task
def view2(todo_list):
for index, todo in enumerate(todo_list, start=1):
for key in todo.keys():
print(f'{index} - {key} - {todo[key]}')
todo = [{'test 1': 'high'}, {'test 2': 'med'}, {'test 3': 'low'}]
while True:
sel = input("Please enter command (1=Add, 2=Delete, 3=View): \n")
if sel == '1': #add task
name = input("Please provide a task name: ")
prio = input("Please select prioty level (High | Medium | Low): ")
add(todo, name, prio)
elif sel == '2':
number = int(input("Please provide a task number: "))
remove(todo, number)
elif sel == '3': #print todo list
view2(todo)
else:
break
输出:
Please enter command (1=Add, 2=Delete, 3=View):
3
1 - test 1 - high
2 - test 2 - med
3 - test 3 - low
Please enter command (1=Add, 2=Delete, 3=View):
2
Please provide a task number: 2
Please enter command (1=Add, 2=Delete, 3=View):
3
1 - test 1 - high
2 - test 3 - low