2012-05-20 2 views
2

이것은 아마도 매우 기본적인 질문 일 것입니다.파이썬의 다른 클래스에서 동일한 객체를 사용하는 방법은 무엇입니까?

한 번 생성 된 다음 "로깅"및 "db"와 같은 많은 클래스의 내 응용 프로그램에서 사용하려는 일부 개체가 있습니다. 다른 클래스가 무언가를하고 싶을 때마다 DB에 새로운 연결을 만들고 싶지 않습니다. "에서 ... 수입 mydb 여기서"다음

class MyDB(object): 
    mydb=createMySQLconnection() 

내가 할 거라고하고 일하는 것이

MyDB.mydb

를 사용

그래서 내 생각은 같은 클래스를 만드는 것이었다? 이것이 최선의 방법인가요?

+0

예 이렇게하면됩니다. –

+0

각 클래스의'__init __()'에 매개 변수로 연결을 전달합니다. 또는 프로그램 전체에서이 연결 만 사용하려는 계획이 없다면 MyDB에서 모든 클래스를 상속받을 수 있습니다. –

답변

2

이렇게하면 작동하지만 클래스를 만들 이유가 없습니다. mydb을 독립 변수로 모듈에 넣기 만하면됩니다.

종종 다른 프로그래밍 언어에서 singleton을 사용하면 모듈을 사용하여 Python을 사용할 수 있습니다.

관련 문제