在Perl中,能够分配对象通常很好,但如果从中分配的变量是'undef',则指定一些回退值.例如:
my $x = undef;
my $y = 2;
my $a = $x || $y;
Run Code Online (Sandbox Code Playgroud)
在这之后,
$a == 2
Run Code Online (Sandbox Code Playgroud)
有没有一种简洁的方法可以在Python中实现这一点,如果值x是None,或者是全开...
if x is not None
a = x
else
a = y
Run Code Online (Sandbox Code Playgroud)
...成为实现这一目标的最恐怖的方式?
编辑:道歉,正如几位评论者所指出的那样,我并没有真正谈论价值未定义,而是Perl中的'undef',这实际上并不是一回事.但最初措辞的问题并没有说清楚.
在我曾经工作的几乎每个项目中,都会有一个或两个具有以下属性的类:
你可能会说糟糕的设计.但在所有情况下,在设计时并非如此.这些课程随着时间的推移有机地成长,成为众所周知的"上帝阶级".这对我在大型软件项目中的经验是如此不变,我不得不问:
提示,经验和想法欢迎!
在Rust中,似乎可以使用基本类型定义Enum作为表示:
enum A {
f64,
i32
}
Run Code Online (Sandbox Code Playgroud)
我该如何使用这样的枚举?例如,如何创建实例以及如何使用match语句处理不同的基元类型?