铁路预订引擎:列车有67个座位,每排5个座位,最后一排有2个座位

时间:2013-11-12 06:05:47

标签: python list

我正在用python设计一个程序 我在火车上有67个座位,我需要将每排座位分成5排,最后一排有2个座位。
我不知道我将如何设计这个。 我正在粘贴我设计的代码。

class Reservation(object):

    def __init__(self, seats, perrow, lastrow):
        self.seats = seats
        self.perrow = perrow
        self.lastrow = lastrow
        self.allseats = []
        import math
        from decimal import Decimal
        rows = math.ceil((Decimal(seats)/Decimal(perrow)))
        for i in range(int(rows)):
            self.allseats.append([])
        iii = 0
        iiii = 1
        for ii in range(int(rows)):
            for b in range(perrow):
                self.allseats[iii].append({'SEATNO'+str(iiii): 'Free'})
                iiii = iiii +1
            iii = iii + 1
        for i in range(perrow-lastrow):
            self.allseats[-1].pop()
        print self.allseats

以上代码工作正常,但效率不高。如果有任何有效的方法,请告诉我这将对我有所帮助

0 个答案:

没有答案