Skip to main content
노트북은 변수 의존성에 따라 셀을 실행하며, 페이지에 셀이 나타나는 순서가 아닙니다. 셀 B가 셀 A에서 정의된 변수를 읽는 경우, 셀 B는 셀 A에 의존합니다. 셀 A는 셀 B의 업스트림이며, 셀 B는 셀 A의 다운스트림입니다. 업스트림 셀이 실행되면, 노트북은 다운스트림 셀을 다시 실행하여 출력이 최신 값을 반영하도록 할 수 있습니다. 셀이 자동으로 실행되는지 여부는 노트북의 런타임 설정에 따라 달라집니다. 노트북은 정의와 레퍼런스를 추적하여 의존성을 확인합니다:
  • 정의는 셀이 생성하는 전역 이름으로, 변수, 함수, 클래스 또는 임포트된 이름 등이 있습니다.
  • 레퍼런스는 셀이 다른 셀에서 읽어오는 전역 이름입니다.
자세한 내용은 marimo의 How marimo runs cells를 참조하세요.

stale 셀과 차단된 셀

노트북은 각 셀의 상태를 추적하여 실행이 필요한지 확인합니다. 주요 셀 상태는 stale과 차단됨입니다.

stale 셀

셀이 한 번도 실행되지 않았거나 최신 코드 또는 입력으로 실행되지 않았다면 stale 상태입니다. 현재 코드와 입력으로 실행되면 더 이상 stale 상태가 아닙니다. 다음 상황에서는 셀이 stale 상태가 됩니다:
  • 셀의 코드를 편집합니다.
  • 노트북이 지연 모드를 사용하는 동안 업스트림 셀이 실행됩니다. 이 모드에서는 노트북이 다운스트림 셀을 자동으로 실행하는 대신 stale 상태로 표시합니다.
  • 지연 모듈 자동 다시 로드가 활성화된 상태에서 셀이 사용하는 Python 모듈이 변경됩니다.
stale 셀을 실행하여 출력을 업데이트하세요. 업스트림 셀 중 stale 셀이 있으면 노트북이 해당 셀을 먼저 실행합니다. 모든 stale 셀을 한 번에 실행할 수도 있습니다.

차단된 셀

셀 또는 해당 셀의 업스트림 셀 중 하나가 비활성화된 경우 셀이 차단됩니다. 차단된 셀은 입력이 변경되더라도 자동으로 실행되지 않습니다. 셀의 차단을 해제하려면, 해당 셀이 의존하는 비활성화된 셀을 다시 활성화하세요. 그러면 노트북이 stale 상태의 다운스트림 셀 중 업데이트된 출력이 필요한 셀을 실행할 수 있습니다. 지침은 셀 비활성화 또는 활성화를 참조하세요.

셀 삭제

셀을 삭제하면 노트북은 해당 셀이 정의한 전역 변수도 함께 삭제합니다. 런타임 설정에 따라, 노트북은 삭제된 변수를 참조하는 셀을 다시 실행하거나 무효화하거나 stale로 표시합니다.

각 전역 이름을 한 번만 정의하세요

각 전역 이름을 하나의 셀에만 정의하세요. 두 개의 셀이 동일한 전역 이름을 정의하면, 노트북은 다운스트림 셀에 대한 단일 진실 공급원을 확인할 수 없습니다. 이 제한은 변수, 함수, 클래스 및 임포트된 패키지 이름에 적용됩니다. 임시 변수의 경우, 변수 이름 앞에 밑줄 하나를 접두사로 붙여 셀에 로컬로 만드세요. 또한 함수 내부에 임시 변수를 정의할 수도 있습니다.

셀 간 변형 방지

여러 셀이 사용하는 객체의 변형을 피하세요. 노트북은 객체 변형을 추적하지 않으므로, 객체를 변형해도 종속 셀이 stale로 표시되지 않습니다. 예를 들어, 한 셀이 다른 셀에서 정의된 데이터프레임에 열을 추가한다고 가정해 보세요. 데이터프레임을 참조하는 셀은 자동으로 다시 실행되지 않습니다. 노트북 상태를 일관되게 유지하려면 새 객체를 생성하고 새 변수에 부여하세요. 객체를 변형해야 하는 경우, 해당 객체를 정의하는 셀에서 변형하세요. 자세한 내용은 Variable mutations are not tracked를 참조하세요.

변수 및 의존성 검사

변수 보기

Variables explorer를 사용하여 정의된 변수, 해당 유형, 선언 위치, 참조 위치를 확인하세요.
종속 노트북 셀 간의 변수 흐름
셀 간의 심볼과 연결에 대해 자세히 알아보려면 다음을 참조하세요:

미니맵에서 셀 관계 뷰

의존성 패널을 사용하여 셀 간의 관계를 확인하세요:
  1. 사이드바에서 의존성 탐색 ()을 선택하세요.
  2. MINIMAP을 선택하세요.

의존성 그래프 뷰

Graph view 를 사용하여 셀 의존성을 방향 비순환 그래프(DAG)로 시각화하세요:
  1. 사이드바에서 의존성 탐색 () 를 선택하세요.
  2. GRAPH 를 선택하세요.
노드를 이동, 확대/축소, 재배치하여 셀 간의 관계를 탐색하세요.
마지막 수정일 2026년 9월 30일