我正在编写的程序是在将座位创建为5行5列的二维列表后,在剧院中“出售”座位。我已经将其大部分工作了,但是如果我在标记为已售出的座位旁边选择一个座位,则会收到一条信息,好像该座位也已售出一样。这是我使用的标准:
填充5 x 5网格。然后执行以下操作。创建一个循环,该循环将一直持续到用户说出他们要退出(是/否)或全部25个席位售出为止。让用户根据行和列(行,列)询问座位位置-记住列表的位置从0开始,但是用户会从行或列位置1询问座位。然后,当用户选择座位,打印出用户的价格,并在价格所在的列表中标记一个“ SS”(已售座位)。然后打印出所有座位,以便用户选择其他座位。当循环中的下一个用户要求座位时,请确保您检查并查看该座位是否已售出(表中有“ SS”)。如果已售出,请告知用户-否则退还价格并标记售出的座椅。在用户要求退出或所有席位都售完或循环结束之后,
这是我的代码:
def main():
seatList = [
[50,50,50,50,50],
[40,45,45,45,40],
[30,35,35,35,30],
[20,20,20,20,20],
[10,10,10,10,10],
]
cont = "y"
while cont.lower() == "y":
print("Here is the seating arrangement:")
availableSeat = seatPrinter(seatList)
totalRow = int(len(seatList)) - 1
totalColumn = int(len(seatList[0])) - 1
seatRow = int(input("Please enter a row number (1 to %d):"%totalRow))
seatColumn = int(input("Please enter a seat number (1 to %d):"%totalColumn))
seatStatus = seatAvailable(seatList, seatRow, seatColumn)
cont = input("Would you like to reserve another seat?(Y/N)")
def seatPrinter(seats):
for i in range(len(seats[0])):
print(seats[i])
def seatAvailable(seats, row, column):
for i in range(len(seats)):
for j in range(len(seats)):
if seats[i][j] is not 'SS':
seats[i][j] = 'SS'
print("Your seat is in row %d seat number %d"%(i+1, j+1))
return
else:
print("Sorry, that seat isn't available.")
return
main()
现在,这是我得到的输出:
Here is the seating arrangement:
[50, 50, 50, 50, 50]
[40, 45, 45, 45, 40]
[30, 35, 35, 35, 30]
[20, 20, 20, 20, 20]
[10, 10, 10, 10, 10]
Please enter a row number (1 to 4):1
Please enter a seat number (1 to 4):1
Your seat is in row 1 seat number 1
Would you like to reserve another seat?(Y/N)y
Here is the seating arrangement:
['SS', 50, 50, 50, 50]
[40, 45, 45, 45, 40]
[30, 35, 35, 35, 30]
[20, 20, 20, 20, 20]
[10, 10, 10, 10, 10]
Please enter a row number (1 to 4):1
Please enter a seat number (1 to 4):2
Sorry, that seat isn't available.
Would you like to reserve another seat?(Y/N)
我似乎找不到为什么我不能在同一排预订更多座位,感谢您的帮助
def main():
seatList = [
[50,50,50,50,50],
[40,45,45,45,40],
[30,35,35,35,30],
[20,20,20,20,20],
[10,10,10,10,10],
]
cont = "y"
while cont.lower() == "y":
print("Here is the seating arrangement:")
availableSeat = seatPrinter(seatList)
totalRow = int(len(seatList)) - 1
totalColumn = int(len(seatList[0])) - 1
seatRow = int(input("Please enter a row number (1 to %d):"%totalRow))
seatColumn = int(input("Please enter a seat number (1 to %d):"%totalColumn))
seatStatus = seatAvailable(seatList, seatRow, seatColumn)
cont = input("Would you like to reserve another seat?(Y/N)")
def seatPrinter(seats):
for i in range(len(seats[0])):
print(seats[i])
def seatAvailable(seats, row, column):
if seats[row-1][column-1] is not 'SS':
seats[row-1][column-1] = 'SS'
print("Your seat is in row %d seat number %d"%(row,column))
return
else:
print("Sorry, that seat isn't available.")
return
main()
结果,
Here is the seating arrangement:
[50, 50, 50, 50, 50]
[40, 45, 45, 45, 40]
[30, 35, 35, 35, 30]
[20, 20, 20, 20, 20]
[10, 10, 10, 10, 10]
Please enter a row number (1 to 4):1
Please enter a seat number (1 to 4):1
Your seat is in row 1 seat number 1
Would you like to reserve another seat?(Y/N)Y
Here is the seating arrangement:
['SS', 50, 50, 50, 50]
[40, 45, 45, 45, 40]
[30, 35, 35, 35, 30]
[20, 20, 20, 20, 20]
[10, 10, 10, 10, 10]
Please enter a row number (1 to 4):1
Please enter a seat number (1 to 4):2
Your seat is in row 1 seat number 2
Would you like to reserve another seat?(Y/N)Y
Here is the seating arrangement:
['SS', 'SS', 50, 50, 50]
[40, 45, 45, 45, 40]
[30, 35, 35, 35, 30]
[20, 20, 20, 20, 20]
[10, 10, 10, 10, 10]
Please enter a row number (1 to 4):1
Please enter a seat number (1 to 4):1
Sorry, that seat isn't available.
Would you like to reserve another seat?(Y/N)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句