回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我试图通过获取一堆条目小部件的内容来创建一个2D列表,但是我不知道如何创建列表。你知道吗</p>
<p>我试着像发电机一样</p>
<pre><code>hwklist = [[student, entries[i].get()] for student in student_group_list]
</code></pre>
<p>但是为了让它工作,我需要增加<code>i</code>来区分不同的条目小部件,因为<code>entries</code>是所有这些小部件的列表,我不知道如何使用生成器来实现这一点。你知道吗</p>
<p>下面,您可以看到我摆脱生成器的解决方案,但是现在列表每次迭代都会被覆盖。我想让它继续附加。你知道吗</p>
<p>学生小组名单的一个例子是:
<code>student_group_list = ['BERRY-SMITH Finlay', 'EDWARDS Elizabeth', 'GREGORY Isabella', 'Hendley-Jones Annabel', 'LIS Natalia', 'MANNING Sophie', 'RATCLIFFE George', 'BELLAMY Jacob', 'BOUGHTON Grace', 'GARNETT Archie', 'Maruta Kudzai', 'DAVELIS Alexander', 'DENMAN David', 'JENKIN Jonathan', 'LISTER Thomas', 'CLOWES Edward', 'OGG Holly', 'PUGH Billy']</code></p>
<p>如果您需要创建输入框字段,这应该可以让您了解我使用的是什么:</p>
<pre><code>root = Tk()
entries = []
for f in range (len(student_group_list)
markentry = Entry(root)
entries.append(markentry)
markentry.pack()
but = Button(root, command = lambda: 2dlist(entries))
but.pack()
</code></pre>
<p>我的当前代码:</p>
<pre><code>def 2dlist(entries):
i = 0
for student in student_group_list:
hwklist = [[student, entries[i].get()]]
i = i + 1
print (hwklist)
</code></pre>
<p>输出应该如下所示:
<code>[['BERRY-SMITH Finlay', '3'], ['EDWARDS Elizabeth', '5'], ['GREGORY Isabella', '6'], ['Hendley-Jones Annabel', '1'], ['LIS Natalia', '7'], ['MANNING Sophie', '3'], ['RATCLIFFE George', '8'], ['BELLAMY Jacob', '7']]...</code>依此类推,这取决于用户在条目小部件中输入的内容。你知道吗</p>
<p>现在我只得到<code>[['PUGH Billy', '7']]</code>,因为它是列表中的最后一项。你知道吗</p>