我想输入多少受害者,然后能够输入每个受害者的姓名和年龄。你知道吗
但我似乎不知道如何做一个循环,要求每个受害者的意见。现在我做一个输入,同样的输入被打印x次。你知道吗
我现在可以看到它的工作原理,但如果不为“name”和“age”分别输入5 x和5 x,我就无法理解如何做到这一点。你知道吗
num_victims = input("How many victims: ")
inc_numbr = 1
v_name = input(str(inc_numbr) + "." + " Victims " + "name: ")
v_age = input(str(inc_numbr) + "." + " Victims " + "age: ")
inc_numbr += 1
v_numbr = 1
v_one = (f"__Victim:__ \n"
f"Name: {v_name}\n"
f"Estimated age: {v_age} years old.\n\n")
v_numbr += 1
v_two = (f"__Victim " + str(v_numbr) + ":__\n"
f"Name: {v_name}\n"
f"Estimated age: {v_age} years old.\n\n")
v_numbr += 1
v_three = (f"__Victim " + str(v_numbr) + ":__\n"
f"Name: {v_name}\n"
f"Estimated age: {v_age} years old.\n\n")
v_numbr += 1
v_four = (f"__Victim " + str(v_numbr) + ":__\n"
f"Name: {v_name}\n"
f"Estimated age: {v_age} years old.\n\n")
v_numbr += 1
v_five = (f"__Victim " + str(v_numbr) + ":__\n"
f"Name: {v_name}\n"
f"Estimated age: {v_age} years old.\n")
v_numbr += 1
为输出格式示例添加:
\受害者:\
姓名:xxxxx
年龄:xxxx
受害者2:\
姓名:xxxxx
年龄:xxxx
等。。你知道吗
循环用于需要多次运行的代码,因此,如果您需要询问一次受害者的数量,但随后输入多个
name
和age
,您可以这样做:这样就得到了一个列表,其中每个元素都是一个名称和年龄的列表。现在可以使用
victims[i-1]
访问文件号i
(因为列表索引以0开头)。你知道吗另一种选择是使用字典:
您可以使用
victims[i-1]
访问文件号i
(因为range
也从0开始),但如果您写入for i in range(1, int(number_of_victims)+1):
,则可以更改此值。现在,每个字典键都是“人类”索引(从1开始),而不是“计算机”索引(从0开始),因此您可以使用victims[i]
访问相同的文件号i
。你知道吗或者,您可以制作一个字典,其中每个键都是受害者的名称,但是如果您有两个相同的名称,则使用该名称添加的上一个键值对将被覆盖:
您需要将其包装在
for
循环中:注意我是如何在
for
循环之外创建victim_names
和victim_ages
对象的,这样它们就不会被覆盖。这些对象是列表-它们最初是空的,但是我们在append
循环中向它们提供数据。你知道吗如果需要,您可以使用dictionary对象作为受害者,但正如Alex F在下面指出的,如果您有两个同名的受害者,则可能会导致数据被覆盖:
将来,当处理这样的问题时,您可能会发现编写伪代码很有帮助。这就像是一个关于代码外观的计划,而不必担心实际编写代码的语法和规则。例如,此问题的一些伪代码可能如下所示:
在回答评论中的问题,如何格式化打印,您可以这样做:
相关问题 更多 >
编程相关推荐