Мне нужно улучшить свои навыки кодирования. Это потому, что когда я делаю программу, мой профессор хочет, чтобы моя программа была менее эффективной во времени. Необходимо сократить этот код, спасибо:))
Я уже пытался использовать OR и AND и использовать две или более переменных в цикле for.
def sum_resistor(self):
num1 = ""
num2 = ""
self.omega_1 = (self.R1.get())
self.omega_2 = (self.R2.get())
for i in range(len(self.omega_1)):
if (self.omega_1[i].isdigit()):
num1 = num1 + self.omega_1[i]
for j in range(len(self.omega_2)):
if (self.omega_2[j].isdigit()):
num2 = num2 + self.omega_2[j]
if 'T' in self.omega_1:
self.omega_1 = ((float(num1)*1e12))
elif 'G' in self.omega_1:
self.omega_1 = ((float(num1)*1e9))
elif 'M' in self.omega_1:
self.omega_1 = ((float(num1)*1e6))
elif 'k' in self.omega_1:
self.omega_1 = ((float(num1)*1e3))
elif 'm' in self.omega_1:
self.omega_1 = ((float(num1)*1e-3))
elif 'u' in self.omega_1:
self.omega_1 = ((float(num1)*1e-6))
elif 'n' in self.omega_1:
self.omega_1 = ((float(num1)*1e-9))
elif 'p' in self.omega_1:
self.omega_1 = ((float(num1)*1e-12))
elif self.omega_1 == '':
self.omega_1 = 0
if 'T' in self.omega_2:
self.omega_2 = ((float(num2)*1e12))
elif 'G' in self.omega_2:
self.omega_2 = ((float(num2)*1e9))
elif 'M' in self.omega_2:
self.omega_2 = ((float(num2)*1e6))
elif 'k' in self.omega_2:
self.omega_2 = ((float(num2)*1e3))
elif 'm' in self.omega_2:
self.omega_2 = ((float(num2)*1e-3))
elif 'u' in self.omega_2:
self.omega_2 = ((float(num2)*1e-6))
elif 'n' in self.omega_2:
self.omega_2 = ((float(num2)*1e-9))
elif 'p' in self.omega_2:
self.omega_2 = ((float(num2)*1e-12))
elif self.omega_2 == '':
self.omega_2 = 0