Ошибка список не определен. Хотя она объявлена

Вот весь код. Когда я хочу запустить функцию night то появляется ошибка в которой написано что список star_areas не определен, хотя я объявил этот список в начале функции. Также пишет что списки xcors и ycors тоже не определены но я их как бы объявлял. Что делать?

from random import *

def night():
    star_areas = [] # список для хранения координат для спавна звезд


    def house(x, y, height, width, color): # функция делает дом с окнами включенным или отлюченным светом
        turtle.up()
        turtle.goto(x, y) # идем к заданным позициям
        turtle.down()
        turtle.fillcolor(color) # задаем цвет дома
        turtle.begin_fill()
        turtle.left(90)
        turtle.forward(height)
        turtle.right(90)
        turtle.forward(width)
        turtle.right(90)
        turtle.forward(height)
        turtle.left(90)
        turtle.end_fill()
        for i in range(x + 10, x + width - 10, 40):  # рисуем окна
            for j in range(y + 10, y + height - 29, 40):
                window(i, j, 20, randint(0, 1)) # чтобы нарисовать окна вызываем функцию window
                # с координатами i, j размером окна в 20 пикселей с включеным(1) или отключенным(0) светом


    def window(x, y, side, islight_on): # функция делает одно окно
        turtle.color(('DarkBlue', 'yellow')[islight_on], ('DarkBlue', 'yellow')[islight_on])
        turtle.up()
        turtle.goto(x, y)
        turtle.down()
        turtle.begin_fill()
        for _ in range(4):
            turtle.forward(side)
            turtle.left(90)
        turtle.end_fill()
        turtle.pencolor('black')


    # turtle.forward(side / 2)
    # turtle.left(90)
    # turtle.forward(side)
    # turtle.up()
    # turtle.goto(x, y)
    # turtle.right(90)
    # turtle.down()
    def houses(x, y): # функция делает дома с окнами включенным или отлюченным светом
        global star_areas
        turtle.up()
        turtle.goto(x, y)
        turtle.down()
        h, w = randrange(220, 501, 40), randrange(200, 401, 40) # рандомно подбираем высоту и ширину дома
        house(x, y, h, w, 'DarkBlue')
        star_areas.append((x, x + w, y + h)) # добавляем к списку star_areas кортеж состоящий из координат левой вершины дома,
        # правой вершины дома и из координат вершины дома
        for _ in range(6):
            x += w # увеличиваем начальную координату по иксу на ширину только что нарисованного дома
            h = randrange(220, 501, 40)
            w = randrange(200, 401, 40)
            star_areas.append((x, x + w, y + h))
            house(x, y, h, w, 'DarkBlue')


    def star(x, y, size): # функция делает одну звезду
        turtle.up()
        turtle.goto(x, y)
        turtle.down()
        turtle.dot(size, 'yellow')
        #turtle.fillcolor('yellow')
        #turtle.begin_fill()
        #for _ in range(4):
            #turtle.forward(size)
            #turtle.left(90)
        #turtle.forward(0)
        #turtle.end_fill()


    xcors = [] # список для хранения координат звезд по x
    ycors = []# список для хранения координат звезд по y


    def stars(): # функция делает звезды с рандомными размерами
        global xcors, ycors, star_areas
        for area in star_areas:
            a, b, c = area # присваеваем переменным a, b и c значения кортежа area
            while len(xcors) != 5: # пока 
                x, y = randrange(a + 15, b - 15), randrange(c + 50, 400)
                while checking(x, y) != True:
                    x, y = randrange(a + 15, b - 15), randrange(c + 50, 400)
                star(x, y, randint(8, 10))
                xcors.append(x)
                ycors.append(y)
            # print(xcors)
            # print(ycors)
            xcors, ycors = [], []

Ответы (0 шт):