写一个求阶乘的函数,然后调用这个函数算出某一个数(例如10)的阶乘并打印出来。
在Ruby中可以这样写:
我们发现,在Ruby中函数定义在def...end块中,if、while、for等语句都以end作为语句块的结尾。函数返回函数块中最后一个说明的值或变量、表达式,无需类似其他语言的return语句。
上述代码的Python语言实现如下,大家可以比较一下:
在Python中,语句块以第一行后的冒号(:)开始,无需end标识结束,以行缩进来标明语句块。
Ruby和Python的共同点在于其动态的特征,特别是内置类型的表现形式。这两种语言都无需对内置类型进行声明,直接可以使用。这是和像Java、C++等静态语言区别较大的地方。
计算1到10的和,用Ruby和Python分别实现如下,大家可以和静态语言的实现比较一下:
Ruby:
Python: