Python模擬購物商品系統涉及資料庫

2021-09-12 19:20:26 字數 4164 閱讀 6890

import pymysql

host = 'localhost'

port = 3306

username = 'root'

password = '123'

db_name = 'jdshop'

charset = 'utf8'

conn = pymysql.connect(

# key=value

host=host,

port=port,

user=username,

password=password,

db=db_name,

charset=charset

)# 建立乙個游標物件

cursor = conn.cursor()

''' 查詢shopmessage**,以及取出全部資料

'''def sql_m():

sql = 'select *from shopmessage'

cursor.execute(sql) # 執行查詢命令

shop_arr = cursor.fetchall()

return shop_arr

''' 查詢shoppingcart(購物車)**,以及取出全部資料

'''def sql_c(): # 購物車

sql = 'select *from shoppingcart'

cursor.execute(sql) # 執行查詢命令

shop_arr = cursor.fetchall()

return shop_arr

def addshop():

'''先檢視有幾條記錄,進而得到新增商品的序號'''

shop_arr = sql_m()

flag=-1

num = len(shop_arr) + 1 # 商品序號加一

name = str(input('請輸入商品名稱:'))

count = int(input('請輸入增加數量:'))

for line in range(0,len(shop_arr)):

if shop_arr[line][1]==name:

flag = line#如果商品原來存在,則不執行插入操作,執行修改操作

if flag==-1:

price = int(input('請輸入商品的**:'))

sql = 'insert into shopmessage(num,name,count,price) values(%s,"%s",%d,%d)' % (num, name, count, price)

else:

count=count+shop_arr[flag][2]

sql='update shopmessage set count= %d where name="%s"'% (count,name)

print(name+"的數量已經增加...")

cursor.execute(sql) # 執行

conn.commit() # 提交資料

print('新增成功...')

''' ok了

1.sql語句,有字串的時候:用"%s"

2.是values不是value

懂了嗎?

'''def showshop():

# 先取出資料,再進行遍歷

shop_arr = sql_m()

print('商品序號\t名稱\t\t\t數量\t價 格\t')

for i in range(0, len(shop_arr)):

print("%s\t\t\t%s\t\t\t%d\t\t%d元" % (shop_arr[i][0], shop_arr[i][1], shop_arr[i][2], shop_arr[i][3]))

def searchshop():

num = str(input('請輸入商品的編號: '))

# 依據商品號進行查詢

sql = 'select *from shopmessage where num="%s"' % num

cursor.execute(sql)

# 把查詢到的資料全部遍歷出來,---只有一條

shop_arr = cursor.fetchall()

print('商品序號\t名稱\t\t\t數量\t價 格\t')

for i in range(0, len(shop_arr)):

print("%s\t\t\t%s\t\t\t%d\t\t%d元" % (shop_arr[i][0], shop_arr[i][1], shop_arr[i][2], shop_arr[i][3]))

return shop_arr # 方便增加購物車使用

def addtocart():

# 獲取購物車的資料後,為其商品號+1

cart_ar = sql_c()

num = len(cart_ar) + 1

# 查詢商品是否存在

shop_arr = searchshop()

flag = -1

name = shop_arr[0][1]

count = int(input('請輸入新增數量:'))

price = shop_arr[0][3]

for line in range(0,len(cart_ar)):

if cart_ar[line][1]==name:

flag = line#如果商品原來存在,則不執行插入操作,執行修改操作

if flag==-1:

sql = 'insert into shoppingcart(num,name,count,price) values (%s,"%s",%d,%d)' % (num, name, count, price)

elif shop_arr[0][2]-count>=0:

sql='update shoppingcart set count= %d where name="%s"'% (count+cart_ar[flag][2],name)

else:

print("數量不夠啦...只有%s"%shop_arr[0][2]+'了')

return 0

sql_shop='update shopmessage set count= %d where name="%s"'% (shop_arr[0][2]-count,name)#更新商品數量

cursor.execute(sql)

cursor.execute(sql_shop)

conn.commit()

print('已加入購物車')

def showcart(): # 顯示購物車

cart_arr = sql_c()

print('商品序號\t名稱\t\t\t數量\t價 格\t')

for i in range(0, len(cart_arr)):

print("%s\t\t\t%s\t\t\t%d\t\t%d元" % (cart_arr[i][0], cart_arr[i][1], cart_arr[i][2], cart_arr[i][3]))

def print_menu():

print('1.新增商品')

print('2.檢視所有商品')

print('3.檢視指定編號商品')

print('4.新增到購物車')

print('5.顯示購物車')

print('6.退出')

fuction = int(input("請輸入您要選擇的功能:"))

return fuction

frag = true

while (frag == true):

fuction = print_menu()

if (fuction == 1):

addshop() # 新增商品

elif (fuction == 2):

showshop()

elif (fuction == 3):

searchshop()

elif (fuction == 4):

addtocart()

elif (fuction == 5):

showcart()

elif (fuction == 6):

frag = false

如何設計乙個電商系統 三 商品系統

商品系統中的問題 商品系統主要就使用來維護商品的基本資訊,下面列出介個主要的版塊 商品管理 商品審核 商品 站 搜尋及批量還原 刪除操作 商品批量操作 商品分類 商品分類 商品分類的crud 商品型別 商品型別 商品的規格 引數的資訊維護 品牌管理 品牌名稱搜尋 批量操作 顯示品牌 隱藏品牌 品牌資...

基於電商中臺架構 商品系統設計 一

二 概念定義 三 技術設計 四 總結 為什麼採用中臺架構前幾篇已經說明了,這裡就介紹一下基礎層和平台層的功能。商品管理 商品的基本操作 商品收藏 管理使用者收藏的商品 商品快照 儲存商品編輯的每乙個快照版本 活動打標 根據不同的活動對映到商品屬性上不同標記 銷量管理 商品的銷量統計 以及排序操作 瀏...

Python之模擬購物車

usr bin env python coding utf 8 filename shopping.py time 2020 3 1 14 14 author anqixiang function 模擬購物車功能 1.啟動程式,輸入工資,列印商品列表 2.使用者根據商品編號選擇商品 3.選擇商品後,...