基于文本的Python RPG存储武器

2024-10-01 19:21:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我是编程新手,我正在自学Python,作为业余爱好,我正在制作一个基于文本的RPG。在

我的问题是:我想存储一份武器、防具等的清单,可以很容易地编辑,而不会把我的整个程序搞砸。我的想法是为它们创建一个单独的模块equipment.py,并将它们存储在一个列表中,比如

equipment = [ 
#Longsword
w1 = 15
#Axe
w2 = 17
]

我只需要导入这个值,并将分配给它们的值用于我决定创建的任何战斗引擎中。这是正确的吗?糟糕的编码约定?我有很多东西要学,任何你要分享的智慧都是非常感谢的。在

编辑:从下面的优秀答案我已经开始编码了,我的代码看起来怎么样?在

^{pr2}$

有什么提示吗?我已经通读了PEP 8,但是我的知识还不够好,或者在这个特殊的案例中没有足够具体的帮助


Tags: 模块py文本程序编辑编码列表编程
2条回答

我建议最好使用python字典(而不是列表)。

equipment = {
              'Longsword': 15,
              'Axe':       17
            }

这样您就可以将longswords值称为equipment['Longsword'],而不是通过它在列表equipment[0]中的位置来引用它。

把它放在一个单独的模块中可能是个好主意,也许是在包含攻击/防御功能和其他物品效果的模块中。

一。

您可能感兴趣的另一个建议(取决于RPG的功能)是为该属性和其他属性准备另一个字典,以便将来可以添加其他属性。也就是说

^{pr2}$

这允许以后添加其他功能(不破坏以前的机制)。

在我看来,最好将这些值存储在python之外的配置文件中。

例如,ConfigParser的语法即使对于不懂任何编程语言的用户也是可读的。

这也使得在你的游戏里有一个武器编辑器的可能性,永久性的改变。实际上,通过使用dictionary方法,您需要更改程序正在运行的文件,这是我尽量避免的。

相关问题 更多 >

    热门问题