0
에 따라 올바른 파이썬 객체를 가져옵니다 어떤 모양이 될지. 모양은 사용자 입력 또는 설정에 따라 다릅니다.나는 모듈 shape.py에 두 개의 상속 클래스를 설정 또는 사용자 입력
파이썬의 설정이나 사용자 입력에 따라 올바른 인스턴스를 얻는 가장 좋은 방법은 무엇입니까?
class_dict = {'triangle': Triangle, 'square': Square}
user_input = input()
shape_object = class_dict[user_input]()
사용자 입력이 triangle
, shape_object
는 Triangle
인스턴스가 될 경우, 그리고 :
감사합니다. 디자인은 https://github.com/evandempsey/python-design-patterns/blob/master/patterns/factory.py에서 확인할 수 있습니다. 그들은'ShapeFactory'를 사용합니다. 나는 지금 최선의 선택이 무엇인지 알지 못한다 ... – Jpaille
이것은 거의 비슷하다. 나의 예제에있는 사전을 if 문으로 대체한다. 나는 개인적으로 사전을 선호한다. 더 짧고 깨끗합니다. – DeepSpace