큰 데이터 세트를 참조해야하는 파이썬 클래스가 있습니다. 매번 데이터 세트를로드하고 싶지 않기 때문에 클래스 인스턴스를 수천 개 생성해야합니다. 처음 생성 및 인수로 다른 하나에 전달되어야하는 다른 클래스에 데이터를 넣어 간단 될 것이다 :파이썬 - 클래스의 첫 번째 인스턴스에 데이터로드
class Dataset():
def __init__(self, filename):
# load dataset...
class Class_using_dataset():
def __init__(self, ds)
# use the dataset and do other stuff
ds = Dataset('file.csv')
c1 = Class_using_dataset(ds)
c2 = Class_using_dataset(ds)
# etc...
하지만 난 싶지 않아 내 사용자는 데이터 세트부터 처리해야합니다 그걸 배경으로 할 수 있다면 항상 똑같아.
클래스의 첫 번째 인스턴스를 만들 때 글로벌 네임 스페이스에 데이터를로드하는 파이썬/표준 방법이 있습니까?
class Class_using_dataset():
def __init__(self):
if dataset doesn't exist:
load dataset into global namespace
use dataset
하지 마십시오. 'Class_using_dataset'를 데이터 셋의 메소드로 만들거나'Class'의 클래스 메쏘드로 데이터 셋을 취합니다. 두 경우 모두 로컬을 유지하면서 비용을 제거하기위한 종결 또는 바인딩 된 방법을 사용할 수 있습니다. 전역 변수가 잘못되었습니다. – Veedrac