В качестве примера, скажем, у меня есть следующие:Как эффективно умножать атрибуты классов? [Python 3]
class abcde:
def __init__(self, x, y):
self.x = x
self.y = y
z = abcde(5, 6)
w = abcde(10, 3)
Если бы я хотел, чтобы создать экземпляр abcde
, скажем zw
, так что значения его атрибутов были продуктом соответствующего атрибуты экземпляров z
и wt
, я бы просто сделать:
zw = abcde(50, 18)
Но мой фактический код имеет 20 атрибутов для abcde
и мне нужен общий способ умножения этих атрибутов вместе, потому что если у меня есть 20 гр ласты, каждая из которых имеет 20 атрибутов, это 400 фигур для записи, а затем микширование (которых много), я буду там навсегда. Я хочу, чтобы это было чем-то вроде:
zw = abcde(z)*abcde(w)
Пожалуйста, дайте мне знать, если есть способ, которым я могу это сделать.
упорядочены атрибуты? Всегда ли 'x' перед« y », раньше,' z' и т. Д.? Если это так, возможно, у вас должен быть атрибут * one *, который хранит кортеж ... Умножение двух кортежей по элементам легко: 'map (operator.mul, (5,6), (10,3))'. – unutbu
Я не знаю, почему вы хотите использовать классы здесь: это не совсем то, для чего они нужны. Более простая функция была бы более подходящей. –
Что вы на самом деле пытаетесь выполнить? Это звучит как потенциальная проблема XY. –