如何在python中向字典添加特定信息

2024-09-29 21:46:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个列表,我要求用户在列表中插入一些单词。我比较他输入的单词,并检查它们是否存在于第一本词典中(如果不存在,我删除该单词)

现在,我想知道他在特定的日子里输入的每一个单词(例如,在第一次迭代中,他输入的id test1 test2我应该有一个类似于0: test1 test2的字典,而在第二次迭代中,如果他只输入test0到就有1: test0

问题是,在第二次迭代中,我得到了一切:1: test1 test2 test0。我怎样才能解决这个问题

import itertools

my_list1 = []
my_first_list = ["test", "test1", "test2"]

zile_muschi = {}
for i in range(0, 2):
    day = str(input("Day" + str(i) + "(spaces between words):"))
    my_list1.append(day)
    combined = list(itertools.chain(*map(str.split, my_list1)))

    for element in combined:
        if element not in my_first_list:
            print("Word: " + element + " is not correct!")
            combined.remove(element)
    zile_muschi[i] = combined
print(zile_muschi)

Tags: in列表myelement单词listitertoolstest1
2条回答

您应该在循环内初始化临时列表。只要稍作改动,您的代码就会如下所示:

import itertools

my_first_list = ["test", "test1", "test2"]

zile_muschi = {}
for i in range(0, 2):
    my_list1 = []
    day = str(input("Day" + str(i) + "(spaces between words):"))
    my_list1.append(day)
    combined = list(itertools.chain(*map(str.split, my_list1)))

    for element in combined:
        if element not in my_first_list:
            print("Word: " + element + " is not correct!")
            combined.remove(element)
    zile_muschi[i] = combined
print(zile_muschi)

在append之前加一个clear,如下所示:

my_list1.clear()

行前:

my_list1.append(day)

相关问题 更多 >

    热门问题