朱莉娅字符串格式“如果”

时间:2016-08-11 02:50:51

标签: python string if-statement format julia

在Python中,$ ./callself.sh xx called by bash called by python, args: ['xx'] $ ./callself.sh called by bash called by python, args: [] 可能会在以下情况下用于可选的字符串格式化。

if

Julia使用美元符号进行字符串格式化。

bar = 3
"{n} bar{s}".format(n=bar, s='s' if bar != 1 else '')
# "3 bars"

bar = 1
"{n} bar{s}".format(n=bar, s='s' if bar != 1 else '')
# "1 bar"

是否可以使用Julia简单地镜像Python代码的功能?

2 个答案:

答案 0 :(得分:5)

是。 $插值方法适用于括号中的表达式。在这种情况下,$bar bar$(bar != 1 ? 's' : "")等同于Python结果。

正如@Oxinabox所提到的,Python的内联if对应于Julia的三元运算符。在Julia中,三元运算符a ? b : cif a b ; else c ; end的便捷快捷方式。请注意,这意味着1==2 ? foo() : bar()不评估foo()

答案 1 :(得分:2)

除了@DanGetz所说的所有内容之外,您可能还想查看Formatting package - 它明确旨在为Julia提供更多类似Python的格式化设施。