首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将多个号码添加到多个列表

如何将多个号码添加到多个列表
EN

Stack Overflow用户
提问于 2020-02-01 20:21:18
回答 2查看 93关注 0票数 0

我正在尝试将多个数字添加到多个列表中。

我想把输入按如下顺序排列:患者一:变量一,变量二,变量三患者二:变量一,变量二,变量三患者三:变量一,变量二,变量三

我已经知道了如何在字典中获取信息,但是顺序是错误的。

但目前的输入顺序是:患者一:变量一,患者二:变量一,患者三:变量一:变量二,患者二:变量二,患者三:变量二,患者一:变量三,患者二:变量三,患者三:变量三

有什么建议吗?

代码语言:javascript
复制
while True:
        print("")
        number_of_persons=(input("Please enter no. of persons \n"
         "Whole digit only. \n"
   "Positive Number:"))

        if number_of_persons.isdigit():
            print("Thanks")
            break
        try:
            pass
        except:
            pass

number_of_persons=int(number_of_persons)

variable_one = []
variable_two = []
variable_three = []

for person in range(0,number_of_persons):
    while True:
        print("Person Number: " ,person + 1)
        a=(input("     Enter variable one: "))

        if a.isdigit():
            print("Thanks")
            variable_one.append(a)
            break
        try:
            pass
        except:
            pass


for person in range(0,number_of_persons):
    while True:
        print("Person Number: " ,person + 1)
        b=(input("     Enter variable two: "))

        if b.isdigit():
            print("Thanks")
            variable_two.append(b)
            break
        try:
            pass
        except:
            pass


for person in range(0,number_of_persons):
    while True:
        print("Person Number: " ,person + 1)
        c=(input("     Enter variable Three: "))

        if c.isdigit():
            print("Thanks")
            variable_three.append(c)
            break
        try:
            pass
        except:
            pass        


print(variable_one)
print(variable_two)
print(variable_three)
EN

回答 2

Stack Overflow用户

发布于 2020-02-01 20:55:18

首先,您要处理的是列表,而不是字典。下面是使用列表列表的一种方法:

代码语言:javascript
复制
while True:
        print("")
        number_of_persons=(input("Please enter no. of persons \n"
         "Whole digit only. \n"
   "Positive Number: "))

        if number_of_persons.isdigit():
            print("Thanks")
            break

number_of_persons=int(number_of_persons)

variables = []
for i in range(number_of_persons):
    variables.append([]) # a list of lists

for person in range(number_of_persons):
    for n in range(3):
        while True:
            a = input(f"Person Number: {person + 1}, variable {n + 1}: ")
            if a.isdigit():
                print("Thanks")
                variables[person].append(a)
                break

print(variables)
票数 1
EN

Stack Overflow用户

发布于 2020-02-01 21:20:55

这里是一种使用字典的方法。

代码语言:javascript
复制
def input_number(i):
    while True:
        try:
            number = int(input(f"\tEnter variable {i+1}: "))
            print("\n")
            break
        except ValueError:
            print("Only integers accepted!\n")
    return number


while True:
    try:
        print("Please enter no. of persons")
        print("Whole digit only.")
        number_of_persons = int(input("Positive number: "))
        break
    except ValueError:
        print("Only integers accepted!\n")


variables = {}
for person in range(number_of_persons):
    print("----------------------------------------")
    vars_ = []
    for i in range(number_of_persons):
        print(f"Person Number: {person + 1}")
        a = input_number(i)
        vars_.append(a)
    variables[person+1] = vars_


print("\n")
print(variables)
for j in range(len(variables)):
    print(variables[j+1])

示例输出:

代码语言:javascript
复制
Please enter no. of persons
Whole digit only.
Positive number: 2
----------------------------------------
Person Number: 1
    Enter variable 1: 50


Person Number: 1
    Enter variable 2: 100


----------------------------------------
Person Number: 2
    Enter variable 1: 150


Person Number: 2
    Enter variable 2: 200




{1: [50, 100], 2: [150, 200]}
[50, 100]
[150, 200]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60016824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档