Я хочу создать экземпляры класса Икс на основе ввода пользователя. Взгляните, пожалуйста, на мой код:
class Cut:
def __init__(self, length, qty):
self.length = length
self.qty = qty
qty_cut_lengths = input("How many cutting lengths are there?")
cut_number = 1
while cut_number <= qty_cut_lengths:
self.length = input("What is the length of " + cut_number + "?")
self.qty = input("How many pieces will be needed?")
cut_number += 1
например Если пользователь вводит 10, я хотел бы, чтобы код создавал 10 экземпляров класса Cut, каждый с соответствующей длиной и qtys. Итак, для первых разрезов, скажем, «заказчику» нужно 5 кусков материала по 30 дюймов. Я бы хотел cut1.length = 30, cut1.qty = 5. Тогда, допустим, им нужно 20 кусков 15-дюймового материала. cut2.length = 15, cut2.qty = 20. И так далее ... Я не могу придумать, как это сделать. Заранее спасибо за помощь!






После определения длины / количества создайте новый разрез.
cut = new Cut(length, quantity)
и сохраните их в списке
cuts = []
while (cut_number <= qty_cut_lengths):
... create cut as above...
cuts.append(cut)
Не так уж далеко от решения. Вам просто нужно создать экземпляры и выполнить некоторые преобразования:
class Cut:
def __init__(self, length, qty):
self.length = length
self.qty = qty
qty_cut_lengths = input("How many cutting lengths are there?")
cuts=[]
for cut_number in range(int(qty_cut_lengths)):
length = input("What is the length of cut n°" +str(cut_number+1)+"?")
qty = input("How many pieces will be needed?")
cuts.append(Cut(int(length),int(qty))) # instance creation and storage
Понимание списка.
foos = [ Foo(x) for x in range(15) ]