python 二维数组元素返回二维坐标_python – 从二维数组中返回生成器而不是位置列表...
生活随笔
收集整理的這篇文章主要介紹了
python 二维数组元素返回二维坐标_python – 从二维数组中返回生成器而不是位置列表...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我昨天正在進行一場游戲,我必須遍歷一個二維陣列并找到標記為“d”的任何單元格的位置(其中單元格表示為“ – ”表示空白,“d”表示為臟).
我使用兩個for循環做到了這一點:
def find_dirty_cells(board):
dirty_cells = []
for enum, row in enumerate(board):
for enumrow, cell in enumerate(row):
if cell == 'd':
dirty_cells.append((enum, enumrow))
return dirty_cells
但后來我認為構建一個生成器對象并返回它可能會更好,所以我寫了這個:
def find_dirty_cells(board):
return ((enum, enumrow) for enumrow, cell in enumerate(row) for enum, row in enumerate(board) if cell == 'd')
但第二個給出了不正確的數據響應(即,它沒有找到’d’單元格).必須有一些簡單的東西,我忽略了第二個不等于第一個,但我看不到它.我試圖解決的真正問題是:有一種簡單的方法讓我的第一次嘗試返回發電機嗎?
總結
以上是生活随笔為你收集整理的python 二维数组元素返回二维坐标_python – 从二维数组中返回生成器而不是位置列表...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: firefox 接受post 不完整_面
- 下一篇: dim private public s