Pythonでプログラムを設計しています。
私は電車に 67 席ありますが、列ごとに座席を分割する必要があります。列ごとに 5 席、最後の列には 2 席があります。
これをどのように設計するかわかりません。私が設計したコードを貼り付けています。
クラス予約(オブジェクト): def __init__(self, 席, perrow, lastrow): self.seats = 座席数 self.perrow = ペロー self.lastrow = lastrow self.allseats = [] インポート数学 from decimal import Decimal rows = math.ceil((Decimal(seats)/Decimal(perrow))) for i in range(int(rows)): self.allseats.append([]) iii = 0 iii = 1 for ii in range(int(rows)): 範囲内の b の場合 (perrow): self.allseats[iii].append({'SEATNO'+str(iiii):'無料'}) iiii = iiii +1 iii = iii + 1 for i in range(perrow-lastrow): self.allseats[-1].pop() self.allseats を出力
上記のコードは正常に動作していますが、効率的ではありません。何か効率的な方法があれば教えてください。