pythonlua
A. python Lua 适合用于服务器或者应用底层吗
一般底层会用c/c++搭建,脚本语言用于配置和业务逻辑
python lua等直接用作底层的话运行速度和编译语言差距还是比较大的(即使是以速度见长的lua,搭配jit后执行速度一般仍然只有c++的1/5到1/10)
B. Python,Lua 哪个适合做绘图软件的插件脚本语言
个人以为,LUA 更适合。
C. Python Lua 适合用于服务器或者应用底层吗
般底层用c/c++搭建脚本语言用于配置业务逻辑
python
lua等直接用作底层运行速度编译语言差距比较(即使速度见lua搭配jit执行速度般仍c++1/51/10)
D. python和lua哪个用处范围广或者更实用,再或者更容易学= =
肯定是python广泛,python是跨平台通用型语言,什么都可以做,用最多的是linux下写脚本以及网站后台。lua基本被用作嵌入式脚本,比如游戏人物流程。
从头学肯定是python方便,如果有c的基础,可能看lua更顺眼。
E. Python相比Lua做游戏脚本有哪些优势和劣势
这是国外的一个程序员写的比较:
在游戏中使用选择lua,有可能是因为lua稍比python更高效一些,还有就是lua调用c是很方便的
F. lua和python谁更适用于嵌入MMORPG
预计新项目会选择lua或python之一作为游戏的脚本语言。以前草草地接触过这两门语言,对于语法,以及嵌入进C/C++程序都有点感性上的认识。可能是受《UNIX编程艺术》中KISS原则的影响,现在总喜欢简洁的东西。所以我个人比较偏向于使用lua。
这两天翻了下网络上的资料,在lua的wiki上看到一篇比较lua和python的文章,草草地翻译出要点:
Python:
1. 扩展库很多,资料很多
2. 数值计算比较强大,支持多维数组,而lua没有数组类型
3. 本身带的c类型(?)支持处理动态链接库,不需要进行C封装(C扩展)
4. 远程调试器,似乎lua扩展工具支持
5. 自然语言似的语法
6. 对于string和list的支持,lua可以通过扩展库实现
7. 对unicode的支持
8. 空格敏感(代码不忽略空格),这其实可以使python的代码风格看起来更好一点
9. 内建位操作,lua可以通过扩展库支持
10.语言本身对错误的处理要好些,可以有效减少程序错误
11.初级文档比lua多
12.对面向对象支持更好
Lua:
1. 比python小巧很多(包括编译出来的运行时库)
2. 占用更小的内存
3. 解释器速度更快
4. 比python更容易集成到C语言中
5. 对于对象不使用引用计数(引用计数会导致更多的问题?)
6. lua早期定位于一种配置语言(作为配置文件),因此比起python来更容易配置数据
7. 语言更漂亮(nice)、简单(simple)、强大(powerful)。
8. lua支持多线程,每个线程可以配置独立的解释器,因此lua更适合于集成进多线程程序
9. 对空格不敏感,不用担心编辑器会将tab替换成空格
Useful Comments:
1. Everything is an object allocated on the heap in Python, including numbers. (So 123+456 creates a new heap object).
2. lua对于coroutine的支持更适用于嵌入进游戏,虽然python也有,但是并没有包含进核心模块
3.Python was a language better suited to Game AI
本来想去找点对于python的正面资料(嵌入进游戏这方面),但是居然没找到。客观地说如果单独用python做应用,python还是很有优势。现在心意已决,应该向leader推荐lua。
ps,希望能补充以上两种语言的特点。
G. 游戏脚本语言,是不是lua超越python了
哪个语言好 哪个语言不好 都是不客观的,片面的
但是在实际应用上lua确实比python更加普遍,只是因为更适合
lua本身的定位 就是嵌入其他程序,完成一部分的逻辑的功能 而本身不提供强大的机制,因此lua本身就只有200K左右
而python的定位则完全相反,python需要能独立完成所有工作,因此它的定位是大而全,不同于小而精的lua,它的大小 有好几十M,这样的大小,对于大部分的游戏而言,不能被接受,所以lua使用的更多
H. Python和Lua是什么
Python
Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
Lua
Lua 是一个小巧的脚本语言。是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组,由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo所组成并于1993年开发。 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。Lua由标准C编写而成,几乎在所有操作系统和平台上都可以编译,运行。Lua并没有提供强大的库,这是由它的定位决定的。所以Lua不适合作为开发独立应用程序的语言。Lua 有一个同时进行的JIT项目,提供在特定平台上的即时编译功能。
I. python 如何实现类似lua中的 a = a or 0,即第一次声明a的时候就已经可以使用此语法了。在python中会报错
这是lua的语法or and的特殊之处
a and b 若a为真 则返回b 若a为假 则返回a本身
a or b 若a为真 则返回a 若a为假 则返回b
所以 c = a or b 对应的python语句是
if a:
c = a
else:
c = b
python很久没用了 不知道有没记错