擅长:python、mysql、java
<p>你的代码更干净</p>
<ul>
<li>您可以使用<code>for</code>而不是<code>while</code>,这样就不需要<code>data = cursor.fetchone()</code></li>
<li>你不需要<code>self.buttonListNum</code></li>
<li>您不必在名称中添加<code>List</code>。<code>buttons</code>和<code>vars</code>更具可读性。如果您想在名称中使用<code>List</code>,那么首选的是<code>button_list</code>和<code>var_list</code></li>
</ul>
<p>是的。你知道吗</p>
<pre><code>for n, data in enumerate(cursor):
specno = data[0]
var = IntVar()
lx = Checkbutton(self.listFrame,
text=specno,
variable=var,
onvalue=1,
offvalue=0)
lx.grid(row=n, column=0, sticky='NW')
self.todoList.append(specno)
self.buttons.append(lx)
self.vars.append(var)
</code></pre>
<p>检查变量:</p>
<pre><code>def check_status(self):
for i, var in enumerate(self.vars):
print(i, var.get())
</code></pre>