擅长:python、mysql、java
<p>看起来您试图使用<code>q</code>的值编辑<code>box_q</code>中的“q”,但是<code>q</code>和<code>box_q</code>是两个完全不同的变量。</p>
<p>您可以动态地操作变量名,但在Python中很少这样做。很好的解释:<a href="https://nedbatchelder.com/blog/201112/keep_data_out_of_your_variable_names.html" rel="nofollow noreferrer">https://nedbatchelder.com/blog/201112/keep_data_out_of_your_variable_names.html</a></p>
<p>相反,您可以使用列表并使用列表索引访问项目,例如</p>
<pre><code>total_squares = 8
box_list = []
for q in range(total_squares):
box_list.append(0)
</code></pre>
<p>您可以使用<code>box_list[0]</code>、<code>box_list[1]</code>等访问每个项。您还可以更简洁地创建框:</p>
<pre><code>boxes = [0] * total_squares
</code></pre>
<p>如果希望框中包含某些内容并具有此命名结构,则可以使用字典:</p>
<pre><code>boxes_dict = {'box_{}'.format(q): 0 for q in range(total_squares)}
</code></pre>
<p>这将创建一个具有<code>total_squares</code>键值对的字典。您可以使用<code>boxes_dict['box_0']</code>、<code>boxes_dict['box_1']</code>等访问每个框。您甚至可以将值从<code>0</code>更改为将某些内容放入框中,例如</p>
<pre><code>boxes_dict['box_2'] = "Don't use dynamic variable naming"
boxes_dict['box_3'] = 'And number your boxes 0, 1, 2 ... etc'
</code></pre>