3

Python 超级容易学习和理解;我喜欢它,因为它使用了关键字、缺乏复杂的语法(与 perl 相反,据我所知)以及易于使用的数据结构。但是,我无法忍受缺少变量声明,因为它无法明确告诉 Python 您希望变量具有什么作用域。是否有任何语言具有我喜欢 Python 的所有品质以及变量声明,也许还有一组不错的库可用?

谢谢。

4

7 回答 7

7

尝试pycheckerpylintpyflakes或其他代码检查工具。它们有助于捕获解释器没有抱怨的错误。

于 2010-11-21T20:24:36.047 回答
2

您可以尝试使用带有变量声明的 Python:

>>> x = 0 # a global variable
>>> def fact(n): #n is a parameter
...     x = 0 # local variable declaration
...     z = 1 # declaration and initialization
...     for i in range(1, n + 1): # a loop variable is defined inline
...         z = z * i
...     return z
...     
>>> x = 5 # the global x
>>> fact(x)
120

你能解释一下这有什么问题吗?此外,正如尼克巴斯汀在评论中所说,如果您解释您的问题是与声明还是范围有关,这将有所帮助。

如果您的问题与语法或静态类型有关,您可以接受下一个语法吗?

def f(double x):
    return x**2-x

def integrate_f(double a, double b, int N):
    cdef int i
    cdef double s, dx
    s = 0
    dx = (b-a)/N
    for i in range(N):
        s += f(a+i*dx)
    return s * dx

这种语法Cython的语法,一种使用编译 (C) 扩展来扩展 Python 的语言。

于 2010-11-21T21:05:32.880 回答
1

C#

下面是一些代码示例

于 2010-11-21T20:36:48.267 回答
0

您还可以查看 Perl 6,它消除了您在 Perl 5 中描述的问题,但保留了优点,甚至可以选择强类型变量。问题是它还没有完成,没有人知道它什么时候会......

无论哪种方式,如果您有兴趣,都可以查看dev.perl.org

于 2010-11-21T21:06:27.123 回答
0

Cython很像 Python,但具有类似于 C 的变量声明(实际上,Cython 允许 C 中存在的很多东西)。

于 2010-11-21T21:50:40.223 回答
0

呢。CLR,非常类似于 Python。具有类型推断的静态类型。

于 2011-02-11T20:40:45.847 回答
0

如果您不是在谈论生产代码,请尝试 Google 的Go 。语言才一年多。它也很容易学习。这个建议只是因为你要求任何语言

否则,Wim Coenen 的答案应该对您有用。

于 2010-11-21T20:49:50.007 回答