Те, кто в Python не первый день, хорошо знают, что на число можно умножить не только число, но и другие типы. Главное, чтобы у этих типов была реализация такой операции.
# list
>>> [1] * 3
[1, 1, 1]
# tuple
>>> (2, 3) * 3
(2, 3, 2, 3, 2, 3)
# string
>>> "A" * 3
"AAA"
Так работает полиморфизм стандартных типов. Интересно здесь то, что это сработает и в том случае, когда порядок операндов обратный. То есть int умножить на [тип].
# list
>>> 3 * [1]
[1, 1, 1]
# tuple
>>> 3 * (2, 3)
(2, 3, 2, 3, 2, 3)
# string
>>> 3 * "A"
"AAA"
Если хотите реализовать такое поведение в ваших классах то следует помнить два момента:
1. Если множитель справа, то вам нужно реализовать метод __mul__, наш класс это первый операнд, то есть слева.
myType * 3
2. Если множитель слева, то вам нужно реализовать метод __rmul__, наш класс это второй операнд, справа.
3* myType
Всё тоже самое можно делать и для других математических операторов. И если в этом примере действие и результат будут фактически одинаковыми, то бывают ситуации, когда это не так.
Например, при умножении матриц имеет значение порядок операндов.
Для других операторов, таких как деление или сдвиг, очень важно кто с какой стороны находится.
>>> 2/4, 4/2
(0.5, 2.0)
>>> 2<<3, 3<<2
(16, 12)
>>> 100%15, 15%100
(10, 15)
#tricks#basic
#Italia
Dichiarazione del Presidente della Regione Calabria e del Vicesegretario di #FI|EPP Roberto #Occhiuto:
"Congratulazioni e auguri di buon lavoro a Stefania Craxi, neo capogruppo di Forza Italia al Senato. Sono felice che la guida del nostro gruppo a Palazzo Madama sia affidata a una figura di grande spessore, con una storia importante, qualità e competenze. Un profilo riformista e liberale che saprà rappresentare al meglio le battaglie storiche del nostro partito. Un ringraziamento a Maurizio Gasparri per il lavoro serio e appassionato svolto in questi anni alla guida del gruppo. Sono certo che continuerà a offrire, con la sua esperienza e la sua costanza, un grande contributo alla nostra comunità politica".
@Osservatorioitaliano
#Calabria, Roberto #Occhiuto: “Ho deciso di dimettermi, ma ho deciso anche di ricandidarmi, di dire ai calabresi: siate voi a scrivere il futuro della Calabria, a dire se la Calabria si deve fermare o se questo lavoro deve proseguire. Tra qualche settimana, quindi, si andrà a votare, e saranno i calabresi a decidere, non altri.”
@UltimoraPolitics
Il vicepremier e ministro delle Infrastrutture, Matteo #Salvini ha invitato i governatori Roberto #Occhiuto e Renato #Schifani al dicastero di Porta Pia per discutere sul progetto del Ponte sullo Stretto tra Calabria e Sicilia
@UltimoraPolitics
#Italia
❗️In pole position per sostituire #Tajani (#FI|EPP) in caso di dimissioni, secondo rumors raccolti dal Giornale d'Italia, ci sarebbe Roberto #Occhiuto (FI), governatore della Calabria, considerato affidabile e vicino a Marina #Berlusconi, che nel frattempo sta preparando la discesa in campo prevista per ottobre 2026. Da non scartare anche Giorgio #Mulè (FI).
@Osservatorioitaliano
#Italia
❗️ Perde forza l'appello dei governatori a Draghi: dopo il no dei 3 governatori di #FdI|ECR, si sfilano anche i forzisti #Cirio, #Bardi, #Toma e #Occhiuto.
@UltimoraPolitics
#Italia🇮🇹
#Regionali
#Calabria
❗️Roberto #Occhiuto (#FI|PPE; supportato anche da #FdI|ECR, #LSP|PfE, #DC|Centro, #UdC|PPE, #NM|PPE, #ScN|Meridionalisti, #PA|Animalisti) è stato rieletto Presidente della Giunta regionale della Calabria.
@TuttoElezioni