1. 程式人生 > >python3實現一個簡單的訂票功能

python3實現一個簡單的訂票功能

 #原創:成都-傑森
1
import prettytable as pt 2 3 def show_tickt(row_num): 4 tb = pt.PrettyTable() 5 tb.field_names = ["行號","座位1", "座位2", "座位3", "座位4","座位5"] 6 for i in range(row_num): 7 l = ["第{}行".format(i+1), "有票", "有票", "有票", "有票", "有票"] 8 tb.add_row(l) 9 print(tb)
10 11 def order_tickt(row_num): 12 tb = pt.PrettyTable() 13 tb.field_names = ["行號","座位1", "座位2", "座位3", "座位4","座位5"] 14 for i in range(row_num): 15 if int(row) == i + 1: 16 l = ["第{}行".format(i + 1), "有票", "有票", "有票", "有票", "有票"] 17 l[int(column)] = '已售' 18
tb.add_row(l) 19 else: 20 l = ["第{}行".format(i+1), "有票", "有票", "有票", "有票", "有票"] 21 tb.add_row(l) 22 print(tb) 23 24 if __name__ == "__main__": 25 row_num = 13 # 共13行 26 show_tickt(row_num) # 顯示空座 27 choose_num = input('請輸入選擇的座位,如13,5,表示第13排5號座位:
') 28 try: 29 row,column = choose_num.split(',') # 拆分行數和列數 30 except: 31 print('輸入格式錯誤,如選擇第13排5號座位請輸入:13,5') 32 order_tickt(row_num) # 顯示訂票

+--------+-------+-------+-------+-------+-------+
| 行號 | 座位1 | 座位2 | 座位3 | 座位4 | 座位5 |
+--------+-------+-------+-------+-------+-------+
| 第1行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第2行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第3行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第4行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第5行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第6行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第7行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第8行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第9行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第10行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第11行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第12行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第13行 | 有票 | 有票 | 有票 | 有票 | 有票 |
+--------+-------+-------+-------+-------+-------+
請輸入選擇的座位,如13,5,表示第13排5號座位:10,4
+--------+-------+-------+-------+-------+-------+
| 行號 | 座位1 | 座位2 | 座位3 | 座位4 | 座位5 |
+--------+-------+-------+-------+-------+-------+
| 第1行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第2行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第3行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第4行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第5行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第6行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第7行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第8行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第9行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第10行 | 有票 | 有票 | 有票 | 已售 | 有票 |
| 第11行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第12行 | 有票 | 有票 | 有票 | 有票 | 有票 |
| 第13行 | 有票 | 有票 | 有票 | 有票 | 有票 |
+--------+-------+-------+-------+-------+-------+

Process finished with exit code 0