<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      python3購物車

      python3實現(xiàn)購物車小程序,優(yōu)化后將程序分成函數(shù),用文件注冊和驗證用戶名密碼。

      
      
      #!/usr/bin/env python
      # -*- coding: utf-8 -*-
      # @Time    : 2020/4/20 下午4:12
      # @Author  : hk
      # @Site    : 
      # @File    : 購物車.py
      # @Software: PyCharm
      
      """
      需求描述:
          1.輸入正確賬號,密碼,進(jìn)入購物車購物
          2.登錄失敗,重新輸入賬號密碼
          3.同一賬號連續(xù)登錄失敗超過三次,則鎖定該賬號
          4.登錄已鎖定賬號,提示賬號已鎖定
        """
      
      #顯示已購商品列表函數(shù)
      def shoping_list(myshping,money):
          print('=============您的購物清單如下=================')
          dic1={}
          for i in myshping:
              if dic1.get(i) == None:
                  dic1[i] =1
              else:
                  dic1[i] +=1
          for k,v in dic1.items():
              print(k,v)
          print("===========================================\n您的余額:%d"%money)
      #購物車函數(shù)
      def shoping():
          goods = [{'name': '電腦', 'price': 1999},
                   {'name': '鼠標(biāo)', 'price': 10},
                   {'name': '游艇', 'price': 20},
                   {'name': '美女', 'price': 998},
                   {'name': 'iphone', 'price': 5000},
      
                   ]
          flag = False
          my_shopping = []
          while True:
              money = input("請輸入您的金額:\n")
              if not money.isdigit():
                  keys = input("輸入錯誤,請按任意鍵重新輸入,或輸入q退出購買\n")
                  if keys.upper() == 'Q':
                      break
                  continue
              money = int(money)
              while True:
                  print('+++++++++++商品列表+++++++++++++')
                  for index, key in enumerate(goods):
                      print(index + 1, key['name'], key['price'])  # 這里key取到的值是每一行的字典,再按key字典的鍵值打印出來商品明細(xì)
                  print('我的錢包余額', money)
                  num = input("請輸入想要購買的商品序號:【或輸入q結(jié)束購買】\n")
                  if num.upper() == 'Q':
                      flag = True
                      break
                  if not num.isdigit():
                      print("輸入錯誤,請重新輸入!")
      
                      continue
                  num = int(num)
                  if num > 0 and num < len(goods) + 1:
                      # print(num,"開始購物\n----------")
                      if money >= goods[num - 1]['price']:
                          my_shopping.append(goods[num - 1]['name'])
                          money = money - goods[num - 1]['price']
                          shoping_list(my_shopping,money)
                          # print(my_shopping, "我的余額", money)
                      else:
                          # print("余額不足")
                          while True:
                              chongzhi = input("余額不足,請輸入充值金額:【或輸入q結(jié)束購買。]\n")
                              if chongzhi.upper() == "Q":
                                  flag = True
                                  break
                              if not chongzhi.isdigit():
                                  # keys_1=input("輸入錯誤,請重新輸入充值金額:或輸入q結(jié)束購買。。。充值部分的錯誤]")
                                  # if keys_1.upper() == "Q":
                                  #     flag = True
                                  #     break
                                  print("輸入錯誤,請重新輸入")
                                  continue
                              money = money + int(chongzhi)
                              break
                          # break
      
                          if flag == True:
                              break
                  else:
                      print("請輸入正確商品編號")
                      continue
              if flag == True:
                  # 打印出購物清單并統(tǒng)計,顯示余額。
                  print("謝謝光臨!")
                  shoping_list(my_shopping,money)
                  exit(0)
              continue
      
      #注冊函數(shù)
      def regist():
          """
          注冊用戶
          name: 用戶名稱
          password:用戶密碼
          :return:
          """
      
          # 讀取用戶文件
          with open("user.txt", encoding='utf-8',mode="r") as read_file:
              read_data = read_file.readlines()
              i_name = []
              for i in read_data:
                  i_line = i.strip().split(',')
                  i_name.append(i_line[0])
              while True:
                  username = input('請輸入用戶名:\n').strip()
                  if username in i_name:
                      print('用戶名已經(jīng)存在,請重新輸入。')
                      continue
                  else:
                      password = input('請輸入密碼:\n').strip()
                      with open('user.txt',encoding='utf-8',mode='a') as read_f1:
                          new_user = [username,password,'0']
                          new_user ='\n' + ','.join(new_user)
                          # print(new_user,type(new_user))
                          read_f1.write(new_user)
                          print('%s,恭喜您注冊成功,請登錄'%username)
                          break
      #修改用戶登錄次數(shù)函數(shù)
      def modify_user(name, mode="add"):
          """
          修改用戶名單中的登錄錯誤次數(shù)
          :param name: 用戶名稱
          :param mode:add,登錄錯誤次數(shù)自增1;del,登錄錯誤次數(shù)重置為0
          :return:
          """
      
          # 讀取用戶文件
          with open("user.txt", encoding='utf-8',mode="r") as read_file:
              read_data = read_file.readlines()
      
          # 寫入用戶文件
          with open("user.txt", encoding='utf-8',mode="w") as write_file:
              for line in read_data:
                  new_line = line.split(',')
                  if new_line[0] == name:
                      if mode == "add":
                          new_line[2] = int(new_line[2]) + 1
                          new_line[2] = str(new_line[2])
                          print(">>>>>>>",new_line)
                      else:
                          new_line[2] = "0"
                      new_line = ",".join(new_line) + "\n"
                      write_file.write(new_line)
                      # print('寫入',new_line)
                      write_file.flush()
                  else:
                      write_file.write(line)
      
      #驗證用戶名密碼函數(shù)
      def auth(name, passwd):
          with open("user.txt", encoding='utf-8',mode="r") as read_file:
              for eachLine in read_file:
                  user_name, password, errors = eachLine.strip().split(',')
                  if name == user_name:
                      if int(errors) < 3:
                          if password == passwd:
                              print ("Dear [%s],歡迎你登錄本購物車" % name)
                              modify_user(name, "del")
                              shoping()
                              # return True
                          else:
                              print ("密碼錯誤,請重新輸入用戶名密碼!")
                              modify_user(name, "add")
                              return False
                      else:
                          print ("您的用戶已經(jīng)鎖定,請聯(lián)系管理員!")
                          return False
              else:
                  print ("用戶名不存在,請重新輸入!")
                  return False
      
      
      def login():
          while True:
              name = input("請輸入用戶名:")
              passwd = input("請輸入密碼:")
              if auth(name, passwd):
                  break
      def menu() :
          while True:
              mode = input('請您注冊或登錄:\n'
                          '注冊選1\n'
                          '登錄選2\n'
                           '或按輸入q退出\n').strip()
              if mode == '1':
                  regist()
              elif mode == '2':
                  login()
              elif mode.upper() == 'Q':
                  exit(0)
              else:
                  print("輸入錯誤,請重新輸入,或按q退出。")
                  continue
      
      
      
      if __name__ == '__main__':
          menu()

      user.txt文件內(nèi)容

      hk,123,2

      abc,222,2

      haha,1,1

      test,1234,0

       

      posted @ 2020-04-22 16:01  莫莫學(xué)習(xí)  閱讀(219)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲人妻中文字幕一区| 四虎影视一区二区精品| 国偷自产一区二区三区在线视频| 国产超碰无码最新上传| 日韩av综合免费在线| 亚洲av综合色区在线观看| 亚洲中文字幕久久精品码| 狠狠色综合久久丁香婷婷| 亚洲AV乱码毛片在线播放| 亚洲啪啪精品一区二区的| 日韩在线视频线观看一区| 国内精品久久久久影院薰衣草| 亚洲国产精品高清线久久| 爱啪啪精品一区二区三区| 中文字幕国产精品资源| 国产激情一区二区三区四区| 国产成人亚洲日韩欧美| 国产极品粉嫩尤物一线天| 猫咪AV成人永久网站在线观看| 内射干少妇亚洲69XXX| 起碰免费公开97在线视频| 看免费真人视频网站| 久久男人av资源站| 国产精品先锋资源在线看| 樱花草在线社区www| 成人午夜av在线播放| 日韩欧美在线综合网另类| 一本大道无码av天堂| 国产美女久久精品香蕉| 久久亚洲av午夜福利精品一区| 国产精品一区二区久久毛片| 阿城市| 一区二区三区四区五区自拍| 亚洲国产片一区二区三区| 99久久亚洲综合精品成人网| 久久天天躁狠狠躁夜夜2020老熟妇| 99热精国产这里只有精品| 久久影院综合精品| 苍井空一区二区三区在线观看| 精品国产91久久粉嫩懂色| 波多野结衣久久一区二区|