我目前正在通過爲MCedit python程序編寫過濾器來學習python,這是一個Minecraft的3D塊編輯器。 過濾器是一小段代碼,可以作爲一個函數在程序中運行。具有屬性的奇怪的Python列表語法
MCedit給出的函數之一允許提取一個原理圖(這裏命名爲temp)來修改它。在演示中,該程序的創造者修改示意性的塊屬性,通過下面的行:
temp.blocks[temp.blocks == 14] = 52
的.blocks屬性是由級聯列表,對3層(X,Y,Z)。
這一段代碼由52
我試圖使它改變其他值,其中替換任何在任何名單等於14的值的:
temp.blocks[temp.blocks == 14 or temp.blocks == 15] = 52
但它只是不起作用。
我知道還有其他方法可以做到這一點,但是這個方法非常簡單,緊湊和高效,我想了解它是如何工作的。
這看起來很像NumPy。 'temp.blocks'實際上是由嵌套列表組成的,還是NumPy ndarray? – user2357112
@ user2357112:我在編輯器源代碼中看到'numpy'依賴關係。 –