我习惯于用Java或C语言编写以下代码,不会出错。它允许我集中化字符串到浮点表示的转换。与下面的简单实现不同,我在Excel中处理负数的逗号或方括号的工作还有很多。你知道吗
我能理解Python为什么会出错。Python代码不是编译的,而是按顺序解释的,并且在处理ZERO
的声明时,Python不存在toFloat
。你知道吗
我想知道是否有一种pythonic方法可以做到这一点,而不必将toFloat
函数拉到另一个模块,或者不必在最上面声明ZERO
?你知道吗
ZERO = toFloat('0.0') # <-- ERROR on this line "Undefined variable: toFloat"
def toFloat(val):
"""Function to convert a string to a float"""
return Decimal(val)
以下是python的方法:
喜欢在常量使用之前定义它们并不是Python的工作方式。最好的办法是学会喜欢这种做事方式,而不是依赖笨拙的变通方法。Python不像Java,不是所有的东西都必须包装在一堆类中。这通常会大大简化代码。一般来说,如果用Python创建一个类,比如示例中的
Tools
,它没有明确的具体用途,那么您可能应该将它从程序中删除。你知道吗我提出了下面的代码,我认为它是干净的,将声明保留在顶部,同时允许我保留下面的代码,但仍然使用它来初始化变量。你知道吗
您正在访问一个未定义的符号,这在许多语言中是个坏主意。 Python不知道符号
toFloat
可能指的是什么。你知道吗为了举例说明,您希望这段代码做什么?
ZERO
应该是零还是一?你知道吗或者在这种情况下:
问题是你可以重新定义你的符号很多次你想。E、 g.这是合法代码:
如果在代码顶部声明
ZERO
是非常重要的,那么您可以对常量使用这个丑陋的hack:把这个放在另一个文件里常量py地址:
然后在文件中,可以使用:
相关问题 更多 >
编程相关推荐