擅长:python、mysql、java
<p>它没有保存,因为您在循环开始时一直重置它(<code>underlines</code>)。把它放在前面,像这样:</p>
<pre><code>def user_input_for_game():
underlines = ["_"] * len(saved_random_word) # outside
while True:
user_input = input("Enter text: ").upper()
if user_input in saved_random_word:
for i, x in enumerate(saved_random_word):
if x == user_input:
underlines.insert(i, user_input)
underlines.pop()
print(underlines)
</code></pre>
<p>试运行:</p>
<pre><code>Enter text: h
['H', '_', '_', '_', '_']
Enter text: a
['H', 'A', '_', '_', '_']
Enter text: p
['H', 'A', 'P', '_', '_']
['H', 'A', 'P', 'P', '_']
Enter text: y
['H', 'A', 'P', 'P', 'Y']
</code></pre>
<p>编辑:在函数外部可以有一个<code>underlines</code>变量:</p>
<pre><code>underlines = ["_"] * len(saved_random_word)
submit_button_actions
</code></pre>
<p>只要在<code>user_input_for_game</code>中有一个参数,并在最后返回更新的下划线</p>