1
什麼是最有效(或Pythonic的方式)來執行雙循環如下(我知道如何做到這一點上的列表理解,但不是一個對象將被返回):循環的高效率
for i in range(0, 9):
for j in range(0, 9):
if self.get(i)[j] == "1":
return (i, j)
什麼是最有效(或Pythonic的方式)來執行雙循環如下(我知道如何做到這一點上的列表理解,但不是一個對象將被返回):循環的高效率
for i in range(0, 9):
for j in range(0, 9):
if self.get(i)[j] == "1":
return (i, j)
>>> next(((i, j)
for i in range(0, 9)
for j in range(0, 9)
if self.get(i)[j] == "1"), None)
如果找不到任何內容,將返回None
。
請參閱文檔next
。
第一個參數是一個生成器。如果您提供None
作爲第二個參數,則需要此設置。否則,您可以跳過額外的括號。如果你不提供None
,雖然它會拋出一個StopIteration
例外,如果沒有發現。
看起來沒問題。如果你真的需要在另一個for循環中使用for-loop,那麼你沒有其他辦法可以做到。 – ForceBru