【发布时间】:2020-07-24 01:42:18
【问题描述】:
变量 a 不存在
我可以用 Lua 语言写作:
a = (a or 0) + 1
现在 a = 1
这让我不必提前声明变量“a”。这是类似的
a = 0
a = a + 1
如何在 Python 中做同样的事情?
a = (a or 0) + 1
附:它为什么如此重要?为了避免将零分配给变量:
python(4行代码):
for ticker in ticker_list:
total_volume[ticker] = 0
for a in range (1,10):
total_volume[ticker] = total_volume[ticker] + a
lua(2行代码):
for a=1,9 do:
total_volume[ticker] = (total_volume[ticker] or 0) + a
【问题讨论】:
-
我想
a = (None or 0) + 1会做你想做的事,但我看不到用例。 -
这样做有什么好处,而不是你定义
a=0的第一种方法? -
@DeveshKumarSingh 亲爱的朋友,它节省了很多代码行
-
@LydiavanDyke 我已经编辑了问题来回答你
-
@IgorK.: "亲爱的朋友,它节省了很多行代码" 它只节省了一行代码。您可以轻松地在循环中声明一个局部变量,该变量包含该值或如果该值为无则为 0,然后将 1 添加到局部变量。