Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
152 views
in Technique[技术] by (71.8m points)

python - Attributes of attributes : point.coord, point.coord.x and point.coord.y

I don't know exactly how to formulate it, but I want to create a class Point with which the coordinates of a point can be accessed both as a tuple and individually, as follows:

point.coord
# tuple (x,y)

point.coord.x
point.coord.y
# coordinates x and y

Do I necessarily have to declare a method point.coord(), or is there such a thing as attributes of attributes? And, for other purposes, what about longer embedded attributes (object.attr1.attr2.attr3)?

question from:https://stackoverflow.com/questions/65602349/attributes-of-attributes-point-coord-point-coord-x-and-point-coord-y

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
class Coord(tuple):
    def __init__(self, points):
        self.x, self.y = points

class Point:
    def __init__(self, *points):
        self.coord = Coord(points)


point = Point(1, 2)

print(point.coord)
print(point.coord.x)
print(point.coord.y)

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...