python和lua数据类型的比较
发表于|更新于|topic
|阅读量:
<a href="/2015/07/11/redis_hiredis_install_tutorial/" rel="next" title="redis和hiredis安装教程">
<i class="fa fa-chevron-left"></i>
<p class="post-nav-pre-next-title">
redis和hiredis安装教程
</p>
</a>
</div>
<span class="post-nav-divider"></span>
<div class="post-nav-prev post-nav-item">
<a href="/2015/07/13/PHP的超级全局变量/" rel="prev" title="PHP的超级全局变量小结">
<p class="post-nav-pre-next-title">
PHP的超级全局变量小结
</p>
<i class="fa fa-chevron-right"></i>
</a>
</div>
</div>
<h2 id="List"><a href="#List" class="headerlink" title="List []"></a>List []</h2><p>例如 : </p>
1 | #!/usr/bin/python |
以上实例输出结果:
1 | ['runoob', 786, 2.23, 'john', 70.2] |
Tuple(元祖)(),相当于只读列表,不可以二次赋值
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
, 除了元祖用()而list用[], 而且元祖只是可读的, 其他的跟list一毛一样
dictionary(字典){},key值对
1 | #!/usr/bin/python |
输出结果为:
1 | This is one |
lua比较特殊的数据类型
lua变量
变量在使用前,必须在代码中进行声明,即创建该变量。
编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,用于存储变量的值。
Lua 变量有三种类型:全局变量、局部变量、表中的域。
Lua 中的变量全是全局变量,那怕是语句块或是函数里,除非用 local 显式声明为局部变量。
局部变量的作用域为从声明位置开始到所在语句块结束。
变量的默认值均为 nil。
1 | a = 5 -- 全局变量 |
执行以上实例输出结果为:
1 | $ lua test.lua |
lua的特有的东西table(表)
在 Lua 里,table 的创建是通过”构造表达式”来完成,
最简单构造表达式是{},用来创建一个空表。
也可以在表里添加一些数据,直接初始化表:
1 | -- 创建一个空的 table |
Lua 中的表(table)其实是一个”关联数组”(associative arrays),数组的索引可以是数字或者是字符串。
1 | -- table_test.lua 脚本文件 |
脚本执行结果为:
1 | $ lua table_test.lua |
不同于其他语言的数组把 0 作为数组的初始索引,在 Lua 里表的默认初始索引一般以 1 开始。
1 | -- table_test2.lua 脚本文件 |
脚本执行结果为:
1 | $ lua table_test2.lua |
table 不会固定长度大小,有新数据添加时 table 长度会自动增长,没初始的 table 都是 nil。
1 | -- table_test3.lua 脚本文件 |
脚本执行结果为:
1 | $ lua table_test3.lua |
文章作者: 安全书