我问你,因为我不知道在哪里转。经过2个小时的搜索,我什么也没想到。
所以基本上我正在编写接收不同变量的程序,然后将单位附加到变量。
现在一切都存储在字典中,其中包含键的变量和值的单位。所以我的问题是如何将字典中的第一个列表与其中的其他列表进行比较?
我需要这些,因为单位的长度必须相同......
这是我的代码:
data = {}
def test():
variable = input("Please enter the name of variable: ")
data[variable]=[]
while True:
unit = input("Enter unit: ")
if unit == "":
break
data[variable].append(unit)
a = len(data[variable])
while True:
start_again = input("Add another value to dictionary?(y/n: ")
start_again = start_again.lower()
if start_again == "d":
test()
elif start_again == "n":
break
print(data)
test()
我是初学者,所以不要太难我。
我期待着答案和建议。
答案 0 :(得分:0)
你可以试试这个:
data = {}
def test():
while True:
variable = input("Please enter the name of variable: ")
new_list = []
while True:
unit = input("Enter unit: ")
if unit == "":break
new_list.append(unit)
下面您可以将要添加到字典中的列表与字典中已有的列表进行比较:
if data: # when the dictionary is not empty
list_length = len(new_list)
other_lengths = [len(item) for item in data.items()]
other_length变量创建字典中所有当前列表长度的列表。如果您想要或只是将新列表和变量添加到字典中,您可以在此处进行某种比较。由你决定。
else: # add new list and variable to empty dictionary
data[variable]= new_list
start_again = input("Add value to dictionary?(y/n): ").lower()
if start_again== 'y':continue
else:
return (data) # returns dictionary
return语句返回字典,因此您可以将其分配给变量,如下所示:
new_data = test()
new_data # calling this would return your dictionary