You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python单词链游戏:多玩家名称输入功能异常求助

解决你的单词链游戏玩家输入问题

嘿,我来帮你搞定这个小问题!你的代码思路是对的,但有几个细节没处理好,导致输出出现了None,也没得到你想要的名字列表。我来一步步给你拆解问题和修正方案:

问题出在哪?

  • append()方法没有返回值:你写的PlayerNames = ls.append(Name)是错误的——list.append()只会修改列表本身,不会返回任何值(也就是返回None),所以每次循环里的PlayerNames都是None,这就是你输出里看到None的原因。
  • 错误的打印对象:你每次循环后打印的是PlayerNames(也就是None),而不是刚输入的玩家名字。
  • 没有正确输出最终列表:循环结束后你没有打印收集好的完整名字列表。

修正后的代码

下面是调整后的代码,完全符合你的预期输出:

def inputWord():
    # 获取玩家数量并直接转为整数,避免后续重复转换
    player_count = int(input("Enter Number of Players:"))
    # 初始化空列表存储玩家名字
    player_names = []
    
    for i in range(player_count):
        name = input("Enter Player Name:")
        # 把名字添加到列表,不需要赋值给变量
        player_names.append(name)
        # 打印刚输入的名字
        print(name)
    
    # 最后打印完整的名字列表,供后续游戏逻辑使用
    print(player_names)

# 调用函数启动输入流程
inputWord()

测试输出

当你运行这段代码,输入如下内容时:

2
David
Martin

会得到你期望的输出:

Enter Number of Players:2
Enter Player Name:David
David
Enter Player Name:Martin
Martin
['David', 'Martin']

额外小建议

  • 变量名尽量用小写加下划线的风格(比如player_names而不是PlayerNames),这是Python的PEP8编码规范,可读性更好。
  • 你代码里没用到的WordChain和PlayerNames字典可以直接删掉,让代码更简洁。

内容的提问来源于stack exchange,提问作者Damian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:10:53