python(餐廳點餐系統)

全部代碼:

meau_lis=[[1,"牛排",50],[2,"羊排",80],[3,"大盤雞",50],[4,"火鍋雞",68],[5,"豬大骨",35],[6,"米飯",2],[7,"壽司",5],[8,"大餅",6],[9,"小米粥",1],[10,"雞蛋湯",2],[11,"咖啡",10],[12,"牛奶",5],[13,"西瓜汁",6],[14,"可口可樂",3],[15,"紅酒",199]]
dc_lis=[]
passkeylis=[]
desk=""
#會員注冊
def zhuce():print("????歡迎來到米其林餐廳????\n")while True:password=input("請輸入會員賬號:\n")key1=input("請輸入密碼:\n")key2=input("請再次輸入密碼:\n")if key1==key2:passkey=[password,key1]passkeylis.append(passkey)print("注冊成功!!")print("返回首頁!")breakelse:print("兩次輸入密碼不一致,請重新注冊!")continue
#輸出餐桌
def canzhuo():print("????歡迎來到米其林餐廳????\n")print("尊敬的顧客請你選擇位置\n")print("\tX-X\tX-X\tX-X\tX-X\t")print("\t|A|\t|B|\t|C|\t|D|\t")print("\tX-X\tX-X\tX-X\tX-X\t")print("\n")print("\tX-X\tX-X\tX-X\tX-X\t")print("\t|E|\t|F|\t|G|\t|H|\t")print("\tX-X\tX-X\tX-X\tX-X\t")print("\n")print("\tX-X\tX-X\tX-X\tX-X\t")print("\t|I|\t|J|\t|K|\t|L|\t")print("\tX-X\tX-X\tX-X\tX-X\t")
#輸出菜單
def meau():print("本店特色:\t\t主食\t\t\t飲品")print("1  牛排-50元\t\t6  米飯-2元\t\t11 咖啡-10元")print("2  羊排-80元\t\t7  壽司-5元\t\t12 牛奶-5元")print("3  大盤雞-40元\t\t8  大餅-6元\t\t13 西瓜汁-6元")print("4  火鍋雞-68元\t\t9  小米粥-1元\t\t14 可口可樂-8元")print("5  豬大骨-35元\t\t10  雞蛋湯-2元\t\t15 紅酒-199元\n")
# 輸出選購的訂單
def show_dc_lis():if len(dc_lis) == 0:print("您啥也沒買 T~T.")else:print("您的選購清單:")for i in dc_lis:for j in meau_lis:if i[0] == j[0]:print(j[1] + " x " + str(i[1]))
# 點餐
def diancan():while True:meau()s = int(input("請您輸入所選的餐品數字編號: \n"))n = int(input("請輸入要購買的數量: \n"))a = [s,n]dc_lis.append(a)print("是否繼續點購? (y\是 n\否)")k = input()if k == "y" or k == "Y":continueelif k == "n" or k == "N":show_dc_lis()breakelse:print("輸入有誤,結束選購.")show_dc_lis()break
# vip積分
def vip(total):print("您是否為本店會員?  (y/n)")while True:k = input()if k == "y" or k == "Y":print("您可為您的賬戶累計消費積分: (1元=1分) ")print("請您登錄賬戶! ! !")while True:password = input("請輸入會員賬號: ")key = input("請輸入密碼: ")for i in passkeylis:if i[0] == password:if i[0] ==key:print("恭喜您登錄成功!")print("已成功積累消費積分:{}(1元=1分)".format(total))breakelse:print("密碼不正確,請重新輸入! ! !")else:print("沒有此賬號,很遺憾本次積分作廢! ! !")breakbreakbreakelif k == "n" or k == "N":print("很遺憾你不能獲得積分,無法享受更多優惠,建議您下次加入我們會員大家庭享受更多權益! ! !")break
#購物評價
def pingjia():print("請為本次購物打分:")print("非常滿意: A")print("滿   意: B")print("不 滿 意: C")print("極不滿意: D")while True:x = input()if x == "A":print("感謝您的支持,祝您生活愉快!!")breakelif x == "B":print("感謝您的評價,我們將做的更好,祝您生活愉快!!")breakelif x == "C":print("抱歉讓您就餐不滿意,我們將進行深刻反思,爭取達到您的滿意,祝您生活愉快!!")breakelif x == "D":print("能收到此評價我們深感抱歉,請撥打1255584145,我們將為您提供一對一處理,祝您生活愉快!!")breakelse:print("輸入有誤,請重新評價!!")
#消費結算
def jiesuan():print("商品名稱\t\t單價\t\t數量\t\t總價")total = 0for i in dc_lis:for j in meau_lis:if i[0] == j[0]:print(j[1]+"\t\t\t"+str(j[2])+"\t\t\t"+str(i[1])+"\t\t\t"+str(j[2]*i[1]))total = total+(j[2]*i[1])print("共計消費:{}元".format(total))vip(total)pingjia()dc_lis.clear()
#本店就餐結算
def jiucan_1():global deskcanzhuo()kk = input("請輸入餐桌號:(例如:A)").upper()desk = kkwhile True:diancan()print("是否繼續選購?y/n")k = input()if k == "y" or k == "Y":continueelif k == "n" or k == "N":breakprint("柜臺結算:")print(desk + "桌結算信息如下:")jiesuan()print("\n")print("感謝您的光臨!!!")
#帶回家就餐結算
def jiucan_2():while True:diancan()print("是否繼續選購?y/n")k = input()if k == "y" or k == "Y":continueelif k =="n" or k =="N":breakprint("柜臺結算:")print("您結算信息如下:")jiesuan()print("\n")print("感謝您的光臨!!!")
#就餐場地選擇
def jiucan ():print("????歡迎來到米其林餐廳????\n\n")print("請問您在店吃還是帶回家就餐?")print("1.再店就餐")print("2.帶回家")while True:k = input()if k == "1":jiucan_1()breakelif k == "2":jiucan_2()breakelse:print("輸入錯誤,請重新輸入")input("按任意鍵返回")
#主界面
def main():while True:print("????歡迎來到米其林餐廳????\n\n")print("                  1.會員注冊")print("                  2.進店就餐")print("                  3.離開")k = input("--------->請輸入數字進行操作!!")if k == "1":zhuce()elif k == '2':jiucan()elif k == "3":breakelse:print("輸入錯誤,請重新輸入!!!")
main()

代碼演示:

C:\Users\ASUS\AppData\Local\Microsoft\WindowsApps\python3.11.exe D:/編程/python/作業/餐廳點餐系統.py
????歡迎來到米其林餐廳????


? ? ? ? ? ? ? ? ? 1.會員注冊
? ? ? ? ? ? ? ? ? 2.進店就餐
? ? ? ? ? ? ? ? ? 3.離開
--------->請輸入數字進行操作!!1
????歡迎來到米其林餐廳????

請輸入會員賬號:
123456
請輸入密碼:
123456
請再次輸入密碼:
12345
兩次輸入密碼不一致,請重新注冊!
請輸入會員賬號:
123456
請輸入密碼:
123456
請再次輸入密碼:
123456
注冊成功!!
返回首頁!
????歡迎來到米其林餐廳????


? ? ? ? ? ? ? ? ? 1.會員注冊
? ? ? ? ? ? ? ? ? 2.進店就餐
? ? ? ? ? ? ? ? ? 3.離開
--------->請輸入數字進行操作!!2
????歡迎來到米其林餐廳????


請問您在店吃還是帶回家就餐?
1.再店就餐
2.帶回家
1
????歡迎來到米其林餐廳????

尊敬的顧客請你選擇位置

?? ?X-X?? ?X-X?? ?X-X?? ?X-X?? ?
?? ?|A|?? ?|B|?? ?|C|?? ?|D|?? ?
?? ?X-X?? ?X-X?? ?X-X?? ?X-X?? ?


?? ?X-X?? ?X-X?? ?X-X?? ?X-X?? ?
?? ?|E|?? ?|F|?? ?|G|?? ?|H|?? ?
?? ?X-X?? ?X-X?? ?X-X?? ?X-X?? ?


?? ?X-X?? ?X-X?? ?X-X?? ?X-X?? ?
?? ?|I|?? ?|J|?? ?|K|?? ?|L|?? ?
?? ?X-X?? ?X-X?? ?X-X?? ?X-X?? ?
請輸入餐桌號:(例如:A)A
本店特色:?? ??? ?主食?? ??? ??? ?飲品
1 ?牛排-50元?? ??? ?6 ?米飯-2元?? ??? ?11 咖啡-10元
2 ?羊排-80元?? ??? ?7 ?壽司-5元?? ??? ?12 牛奶-5元
3 ?大盤雞-40元?? ??? ?8 ?大餅-6元?? ??? ?13 西瓜汁-6元
4 ?火鍋雞-68元?? ??? ?9 ?小米粥-1元?? ??? ?14 可口可樂-8元
5 ?豬大骨-35元?? ??? ?10 ?雞蛋湯-2元?? ??? ?15 紅酒-199元

請您輸入所選的餐品數字編號:?
1
請輸入要購買的數量:?
2
是否繼續點購? (y\是 n\否)
y
本店特色:?? ??? ?主食?? ??? ??? ?飲品
1 ?牛排-50元?? ??? ?6 ?米飯-2元?? ??? ?11 咖啡-10元
2 ?羊排-80元?? ??? ?7 ?壽司-5元?? ??? ?12 牛奶-5元
3 ?大盤雞-40元?? ??? ?8 ?大餅-6元?? ??? ?13 西瓜汁-6元
4 ?火鍋雞-68元?? ??? ?9 ?小米粥-1元?? ??? ?14 可口可樂-8元
5 ?豬大骨-35元?? ??? ?10 ?雞蛋湯-2元?? ??? ?15 紅酒-199元

請您輸入所選的餐品數字編號:?
6
請輸入要購買的數量:?
2
是否繼續點購? (y\是 n\否)
n
您的選購清單:
牛排 x 2
米飯 x 2
是否繼續選購?y/n
n
柜臺結算:
A桌結算信息如下:
商品名稱?? ??? ?單價?? ??? ?數量?? ??? ?總價
牛排?? ??? ??? ?50?? ??? ??? ?2?? ??? ??? ?100
共計消費:100元
您是否為本店會員? ?(y/n)
y
您可為您的賬戶累計消費積分: (1元=1分)?
請您登錄賬戶! ! !
請輸入會員賬號: 123456
請輸入密碼: 123456
恭喜您登錄成功!
已成功積累消費積分:100(1元=1分)
請為本次購物打分:
非常滿意: A
滿 ? 意: B
不 滿 意: C
極不滿意: D
A
感謝您的支持,祝您生活愉快!!


感謝您的光臨!!!
按任意鍵返回

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/45190.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/45190.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/45190.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深入理解MySQL中的EXPLAIN及type列

在MySQL中,EXPLAIN是一個強大的工具,它可以幫助我們理解SQL查詢的執行計劃。通過使用EXPLAIN,我們可以獲取到查詢的詳細信息,包括如何執行查詢,以及查詢的各個部分如何連接在一起。在本篇博客中,我們將重點…

Redis+Caffeine 實現兩級緩存實戰

RedisCaffeine 實現兩級緩存 背景 ? 事情的開始是這樣的,前段時間接了個需求,給公司的商城官網提供一個查詢預計送達時間的接口。接口很簡單,根據請求傳的城市倉庫發貨時間查詢快遞的預計送達時間。因為商城下單就會調用這個接口&#xff…

防火墻安全策略及用戶認證實驗

目錄 一、實驗拓撲 二、實驗要求 三、實驗思路 四、實驗配置 1、配置vlan 2、配置路由器、防火墻IP地址,劃分區域 3、配置安全策略 ?策略一: 策略二: 策略三: 4、配置用戶認證 策略一: 策略二&#xff1a…

視覺SLAM與定位之一前端特征點及匹配

視覺SLAM中的特征點及匹配 參考文章或鏈接特征點性能的評估傳統特征點和描述子(僅特征點或者特征點描述子)傳統描述子 基于深度學習的特征點基于深度學習的描述子基于深度學習的特征點描述子特征匹配 參考文章或鏈接 Image Matching from Handcrafted t…

WebGIS基礎原理

該部分內容與部分插圖、學習框架的主要參考的網站與博主如下(也趁機分享給大家): OSGeo開源WebGIS在線教程:http://webgis.cn/ OSGeo《地理信息系統原理》:https://www.osgeo.cn/gis-tutorial/index.html OSGeo《Pyth…

DSC主備歸檔報錯

先看一個報錯: 2024-07-10 22:12:21.725 [ERROR] database P0000003511 T0000000000000003696 rafil_list_overlap_consecutive_check failed, rfil(DMDATA/data/DSC02/arch/ARCHIVE_LOCAL1_0x57843343_EP1_2024-07-10_20-44-40.log)->next_seq(2901) > nex…

mysql 8.0.37 客戶端在centos7安裝順序

8.0.37安裝客戶端順序為 yum localinstall mysql-community-libs-compat-8.0.37-1.el7.x86_64.rpm #第二步要加 --nodeps --force 參數 rpm -ivh mysql-community-libs-8.0.37-1.el7.x86_64.rpm --nodeps --force rpm -ivh mysql-community-client-plugins-8.0.37-1.el7.x8…

如何用CSS3畫一個三角形?

要用 CSS3 畫一個三角形,可以利用元素的邊框和透明邊框的特性來實現。以下是一個簡單的示例代碼: .triangle {width: 0;height: 0;border-left: 50px solid transparent; /* 左邊框為透明,控制三角形的左斜邊 */border-right: 50px solid tr…

部署Harbor倉庫

本章內容: 安裝docker-ce部署harbor倉庫上傳和拉取 1.安裝docker 1)拉取源碼 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 2)安裝docker-ce yum -y install docker-ce 3&#…

【TS】Typescript 的類

TypeScript 是 JavaScript 的一個超集,它添加了可選的靜態類型和基于類的面向對象編程。在 TypeScript 中,類是一種模板,用于創建對象。通過類,你可以封裝對象的屬性(數據)和方法(函數&#xff…

C++入門到進階(圖文詳解,持續更新中)

C入門到進階(圖文詳解,持續更新中) 目錄 C入門到進階(圖文詳解,持續更新中) 數據 數據類型 基本數據類型/內置數據類型 C常用運算符 賦值運算符 關系運算符 邏輯運算符 雜項運算符 數據的本地化…

第二課:使用域名dns ping通www.baidu.com

需要一臺dns服務器,實現域名解析,把對應的網址變為Ip地址。 首先按照之前博客的配置,自動分配給PC1和PC2的IP地址等相關配置。 然后增加一臺server交換機連接到交換機上,配置好ip地址,192.168.1.100。在dnsServer中。…

7.11日學習打卡----初學Redis(六)

7.11日學習打卡 目錄: 7.11日學習打卡一. redis事務事務的概念與ACID特性Redis事務三大特性Redis事務執行的三個階段Redis事務基本操作 二. redis集群主從復制主從復制環境搭建主從復制原理剖析 哨兵監控哨兵監控環境搭建哨兵工作原理剖析 故障轉移Cluster模式Clust…

c++初階知識——類和對象(1)

目錄 1.類和對象 1.1 類的定義 1.2 訪問限定符 1.3 類域 2.實例化 2.1 實例化概念 2.2 對象大小 內存對齊規則 3.this指針 1.類和對象 1.1 類的定義 (1)class為定義類的關鍵字,Stack為類的名字,{}中為類的主體&#xf…

達夢數據庫中的線程和進程

達夢數據庫中的線程和進程 在達夢數據庫中,線程和進程的概念與操作系統中的定義類似,但有一些特定的實現細節和用途。以下是達夢數據庫中線程和進程的一些關鍵點: 進程(Process): 在達夢數據庫中&#x…

django的增刪改查,排序,分組等常用的ORM操作

Django 的 ORM(對象關系映射)提供了一種方便的方式來與數據庫進行交互。 1. Django模型 在 myapp/models.py 中定義一個示例模型:python from django.db import modelsclass Person(models.Model):name models.CharField(max_length100)age…

mysql數據庫被偷家,數據全部丟失。還勒索我給他比特幣

歹徒留下的勒索信息。 解決辦法: 1、設置ip白名單, 2、端口不要使用默認端口,隨便換個端口就行。 3、密碼設置復雜一點。

【Java16】多態

向上類型轉換 對于引用變量,在程序中有兩種形態:一種是編譯時類型,這種引用變量的類型在聲明它的時候就決定了;另一種則是運行時類型,這種變量的類型由實際賦給它的對象決定。 當一個引用變量的編譯時類型和運行時類…

【Pytorch】Conda環境pack打包遷移報錯處理

文章目錄 Anaconda虛擬環境打包一、源電腦的環境打包1.安裝conda-pack工具2.確定環境3.打包環境4.將打包環境拷貝到U盤 二、環境遷移到目標電腦上三、異常處理pip install -e. 導致無法pack→忽略管理的文件已經被刪除或者被覆蓋→壓縮成tar注意 重新激活環境 Anaconda虛擬環境…

14 - matlab m_map地學繪圖工具基礎函數 - 一些數據轉換函數(一)

14 - matlab m_map地學繪圖工具基礎函數 - 一些數據轉換函數(一) 0. 引言1. 關于m_ll2xy和m_xy2ll2. 關于m_lldist3. 關于m_xydist4 關于m_fdist5 關于m_idist6. 總結 0. 引言 通過前面篇節已經將m_map繪圖工具中大多繪圖有關的函數進行過介紹&#xff0…