X
, Y
i Z
są trzema współrzędnymi prostopadłościanu.Znaleźć współrzędne prostopadłości używając zrozumienia list w Pythonie
Teraz X = 1, Y = 1, Z = 1 i N = 2.
Muszę wygenerować listę wszystkich możliwych współrzędnych na siatce 3D, gdzie suma Xi + Yi + Zi nie jest równa N. Jeśli X = 2, możliwe wartości Xi mogą wynosić 0, 1 i 2 . to samo odnosi się do Y i Z.
pisałem to poniżej kod do tej pory, a to daje wyjście jak:
[[0, 0, 0]]
jednak oczekiwany wynik jest
[[0, 0, 0], [0, 0, 1], [0, 1, 0], [1, 0, 0], [1, 1, 1]]
poniżej jest mój kod, co jest grane źle w moim kodzie?
[[x,y,z] for x in range(X) for y in range(Y) for z in range(Z) if x+y+z != N]
Spróbuj "wydrukować zakres (1)" i możesz zobaczyć problem. – M4rtini