Ich versuche mich gerade am Conway's Game of life. Das was ich also geschrieben hab will ich nicht so benutzen, aber ich brauche es um später zu wissen welche Zelle Tot und welche Lebendig ist.
Das ganze versuche ich mit einer row_example liste an die ich dann X viele "D" anhänge, diese liste wird dann X mal an die area liste angehängt. dann müsste ich doch eine 2D liste haben, was auch klappt, allerdings ist es so als würde einfach an jeder untergeordneten liste alles gemacht wird. Ich wäre euch sehr dankbar wenn ihr mir sagt woran es liegt, denn das macht echt irgendwie spaß.
Hier der Quellcode der area.py datei:
Code: Alles auswählen
area = []
def create_area(area_len):
row_example = []
for i in range(area_len+1):
row_example.append("D")
for i in range(area_len+1):
area.append(row_example)
create_area(10)
print(area)
area[1][1] = "X"
print("---")
print(area)
Code: Alles auswählen
[['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D']]
---
[['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D'], ['D', 'X', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D', 'D']]
Code: Alles auswählen
# area_len = Feldlänge z.B. 20
# area = 2 Dimensionale Liste (repräsentiert die zellen)
from tkinter import *
root = Tk()
def create_window(area_len): # Erzeugt ein Fenster mit Toten Zellen
liste = []
for x in range(0, area_len+1):
for y in range(0, area_len+1):
Button(root, width = 3, bg="Black", relief="raised").grid(row=x, column=y)
def refresh(area, area_len):
for x in range(0, area_len): # area wird nach lebenden zellen durchsucht
for y in range(0, area_len):
if area[x][y] == "X":
Button(root, width = 3, bg = "Gold",relief="raised").grid(row=x, column=y)
elif area[x][y] == "D":
Button(root, width = 3, bg = "Black", relief="raised").grid(row=x, column=y)
else:
print("NOT DEFINED LIST CHARAKTER")