使用python簡單創建一個用戶和商城小程式

来源:https://www.cnblogs.com/WSEGordon/archive/2018/12/19/10141207.html
-Advertisement-
Play Games

整體思路: 1.用戶功能:購買、顯示餘額、列表清單、輸入 2.商家功能:修改和添加商品 創建兩個介面: 用戶: 商家: ...


整體思路:

1.用戶功能:購買、顯示餘額、列表清單、輸入

2.商家功能:修改和添加商品

創建兩個介面:

用戶:

#Author: Gordon

#讀取文檔,生成goods
f = open('goods.txt',mode='r+',encoding='utf-8')
line = f.readline()
goods = eval(line)
user_goods ={}
print("商品:價格:",str(goods))
#輸入工資,購買商品
salary = int(input("請輸入你的工資: "))
while True:
wants = input("請輸入你要購買的商品: ")
if wants in goods:
user_goods[wants] = 1
salary = salary - goods[wants]
print("你的餘額還有: %d" % salary)
elif wants == 'q':
break
else:
print("對不起,我們沒有這件商品")


#顯示已經購買信息和餘額
print("你的購物車:",str(user_goods))
print("餘額:%s"% salary)

商家:

#Author: Gordon

#step1:讀取文件,將商品信息保存到goods字典里
f = open('goods.txt',mode='r+',encoding='utf-8')
lines = f.readline()
print(lines)
goods = eval(lines)

print("商品數量為:%d" % len(goods))
print("商品為:" ,goods)

#step2:詢問店主是要上貨,還是修改商品價格,執行相應操作

info = '''
#a:添加商品
#u:修改商品價格
#q:退出
'''
print(info)

while True:
print("請問你是要添加商品或者修改商品:")
order = input("請輸入命令:a or u: ")
if order == 'a':
add_goods_name = input("請輸入要添加的商品名稱:")
add_goods_prise = int(input("請輸入添加商品的價格:"))
goods[add_goods_name] = add_goods_prise
print("添加成功")
elif order == 'u':
update_goods_name = input("請輸入要修改的商品名稱:")
if update_goods_name in goods :
update_goods_prise = input("請輸入商品新的價格:")
goods[update_goods_name] = update_goods_prise
print("更新成功")
else:
print("對不起,你沒有這件商品!")
elif order == 'q':
break
else:
print("命令錯誤!")

#保存進文件里

goods = str(goods)
f.seek(0,0)
f.write(goods)
f.close()
最後商城介面:
#Author: Gordon



rule = input("請輸入你的角色:")
if rule == 's':
import shop
shop
elif rule == 'c':
import costomers
costomers
else:
pass


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 閉包在紅寶書中的解釋就是:有權訪問另一個函數作用域中的變數的函數。 1.變數作用域 全局變數:所有的函數外部定義的變數,它的作用域是整個script。 局部變數:定義在函數體內部的變數,作用域僅限於函數體內部。離開函數體就會無效。再調用就是出錯。 舉例如下-局部變數: a變數定義在fun函數內,是局 ...
  • 什麼是瀏覽器內核 瀏覽器內核的分類 瀏覽器內核的作用 W3C 帶著問題去瞭解 1、什麼是瀏覽器內核? 瀏覽器端內核就是開發商按照約定好的規則開發出的能夠將正確開發者代碼渲染成頁面的東西 2、瀏覽器內核的分類: webkit內核:chrome瀏覽器及大部分安卓手機、safari Gecko內核:FF ...
  • java深克隆和淺克隆 基本概念 1. 被覆制對象的所有變數都含有與原來的對象相同的值,而所有的對其他對象的引用仍然指向原來的對象。換言之,淺複製僅僅複製所拷貝的對象,而不複製它所引用的對象。 1. 被覆制對象的所有變數都含有與原來的對象相同的值,除去那些引用其他對象的變數。那些引用其他對象的變數將 ...
  • 轉載請標明出處: https://www.fangzhipeng.com 本文出自 "方誌朋的博客" 在上一篇文章詳細的介紹了Gateway的Predict,Predict決定了請求由哪一個路由處理,在路由處理之前,需要經過“pre”類型的過濾器處理,處理返迴響應之後,可以由“post”類型的過濾器 ...
  • 一、適配器模式 1、概念 定義:將一個類的介面,轉換成客戶期望的另一個類的介面,適配器讓原本介面不相容的類可以合作無間。 安卓轉Type C頭,就是一個典型的適配器模式。在安卓頭和 Type C 之間引入適配器,安卓頭是被適配者。 解析:   1、 客戶(Client)通過目標接 ...
  • Zookeeper 的核心原理 Zookeeper 的由來 各個節點的數據一致性 怎麼保證任務只在一個節點執行 如果orderserver1掛了,其他節點如何發現並接替 存在共用資源,互斥性、安全性 Apache 的Zookeeper Google 的Chubby 是一個分散式鎖服務,通過Googl ...
  • 中介者模式是一種常見的解耦思維的模式,本文對中介者模式進行了簡單介紹,給出了中介者模式的意圖,結構,以及意圖發展演變,給出了中介者模式的Java代碼示例,中介者模式又稱為調停者模式,是迪米特法則的詮釋。 ...
  • 公眾號:SAP Technical 本文作者:matinal 原文出處:http://www.cnblogs.com/SAPmatinal/ 原文鏈接:SAP ABAP7.5x系列之預定義數據結構 前言部分 先說一下,之前有些文章被轉載之後也沒有註明,這個就比較不好。如果你覺得本文寫的並不好,那麼可 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...