비어있는 생성자를 만들 수있는 방법이 있습니까?파이썬 비어있는 생성자
class Point:
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
가 지금은 이런 식으로 초기화 :
p = Point(0, 5, 10)
나는 빈 생성자를 생성하고 이런 식으로 초기화 할 수 있습니다 방법 :
p = Point()
비어있는 생성자를 만들 수있는 방법이 있습니까?파이썬 비어있는 생성자
class Point:
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
가 지금은 이런 식으로 초기화 :
p = Point(0, 5, 10)
나는 빈 생성자를 생성하고 이런 식으로 초기화 할 수 있습니다 방법 :
p = Point()
class Point:
def __init__(self):
pass
그러나 이것은 현재 구현과 공존 할 수 없습니다. 그 이름을 가진 하나의 메소드 만 유지됩니다. – jonrsharpe
이 코드는 질문에 대답 할 수 있지만 문제를 해결하는 방법 및/또는 이유에 대한 추가 컨텍스트를 제공하면 대답의 장기적인 가치가 향상됩니다. –
로를 나는 클래스가 @ jonrsharpe는 주석에서 기본 인수를 사용할 수 있다고 말했습니다.
class Point:
def __init__(self, x=0, y=0, z=0):
self.x = x
self.y = y
self.z = z
이제 Point()
당신은 선택적 매개 변수로 Point
클래스의 __init__()
방법을 정의해야 호출 할 수 있습니다.
class Point:
def __init__(self, x=0, y=0, z=0):
self.x = x
self.y = y
self.z = z
pointA = Point(0, 5, 10)
print("pointA: x={}, y={}, z={}".format(pointA.x, pointA.y, pointA.z))
# print "pointA: x=0, y=5, z=10"
pointB = Point()
print("pointB: x={}, y={}, z={}".format(pointB.x, pointB.y, pointB.z))
# print "pointB: x=0, y=0, z=0"
을 그리고 두 번째 버전의 x, y 및 z는 무엇을해야합니다 : 귀하의 경우
,이 일을해야합니까? 기본 주장 만 듣고 싶지 않아? 자습서를 읽으려고했거나 조사를 해본 적이 있습니까? – jonrsharpe