Lua 与 Python

lua-users home
维基

简介

Python [1] 是一种流行的编程语言。Python 和 Lua 通常被嵌入到应用程序中以提供脚本支持。

脚本在游戏中越来越频繁地使用。在选择脚本语言时,需要考虑许多因素。这可能是一个简单的决定,基于目标平台的架构,例如您是在 PC 上还是游戏机上。假设您有快速 CPU、虚拟内存和硬盘存储的奢侈,Python 的庞大库资源可以帮助您更快地完成项目。如果您没有这些奢侈品,Python 就不是一个选择,因为它相当大。

一般比较

以下是简单的比较,列出了 Python 和 Lua 相互的优势

Python

Lua

面向对象

基于 OO 模型的比较将在此处进行

Python

Lua

犹豫不决

参考资料

用户意见

请不要在这里开始一场口水战。请随时就您的经验发表简单的客观陈述。

它不再存在。在 https://lua-users.lua.ac.cn/lists/lua-l/ 中搜索“lua -w”(带引号)。请参阅 DetectingUndefinedVariables。--DavidManura

这是一个奇怪的观点,您将整个决定都建立在它之上。Python 的生成器与即将推出的 Lua 的有限协程相同。请参阅 LuaList:2002-07/msg00174.html
它们是相关的,但并不相同。Lua 的协程更加通用。此外,我们并没有将整个决定建立在这个观点之上;它只是决定平衡的关键问题。
从历史上看,Python 生成器并不与协程“相同”:请参阅 https://www.pythonlang.cn/dev/peps/pep-0342/,了解 Python 最近支持协程的更改。
对于 Python,可以使用 Codespeak 库(Debian 包 python-codespeak-lib)中的 greenlets,无需使用完整的无栈路线,就可以获得非常好的协程支持。--SeanHoldsworth
但这真的对递归生成器有帮助吗?请参阅 LuaCoroutinesVersusPythonGenerators
我将添加一个关于 Python 指针态度的说明,以及我还没有找到;嗯,Lua 做“引用”,它们...很奇怪,在 Python 中,人们仍然可以很容易地复制变量。

从那时起,我当然一直在使用 Python。我发现 Python 由于其庞大的库集,更适合通用脚本和 RAD 工作。我也非常习惯 Python 的语法,包括它的怪癖,所以发现我的手指自然而然地以 Python 的方式做事。(我在 Lua 中使用 "." 而不是 ":" 作为方法访问器的次数,会让大多数人笑掉大牙。)然而,即使是最轻微的可能性,我也不会考虑将 Python 用于任何嵌入式场景。Lua 是我在这方面的首选工具。-- MichaelRichter

另请参见


最近更改 · 偏好设置
编辑 · 历史
最后编辑于 2018 年 9 月 19 日下午 3:54 GMT (差异)