Python入门:如何按字符串长度获取N个输入并存入数组
Hangman项目:按单词长度存储N次输入到数组
问题描述
我刚接触Python,正在开发Hangman(刽子手)项目,想根据随机选中单词的字母数量N,获取N次用户输入并将它们存入数组(列表)中。目前的代码只能单次获取输入,无法保存所有输入内容:
import random words = ["banana", "orange", "cherry", "apple", "peach", "watermelon", "blueberry"] word = random.choice(words) for count in range(len(word)): guess = input("Enter your guess: ")
解决方案
只需初始化一个空列表,每次获取输入后将其添加到列表中即可:
import random words = ["banana", "orange", "cherry", "apple", "peach", "watermelon", "blueberry"] word = random.choice(words) # 创建空列表用于存储所有猜测 guesses = [] for _ in range(len(word)): guess = input("Enter your guess: ") # 将当前猜测添加到列表末尾 guesses.append(guess) # 后续可直接使用guesses列表,比如打印所有猜测 print("你所有的猜测:", guesses)
额外优化建议
如果需要提升输入的有效性,可以添加简单的校验:
- 确保输入是单个字母:
for _ in range(len(word)): while True: guess = input("Enter your guess (single letter): ") if len(guess) == 1 and guess.isalpha(): break print("请输入单个字母!") guesses.append(guess.lower()) # 统一转为小写,避免大小写差异 - 避免重复猜测:
for _ in range(len(word)): while True: guess = input("Enter your guess: ").lower() if len(guess) == 1 and guess.isalpha() and guess not in guesses: break print("请输入未猜过的单个字母!") guesses.append(guess)
内容的提问来源于stack exchange,提问作者Omar Mahmoud
相关产品推荐
相关产品推荐

