二手产品经理

二手产品经理

THIS IS RENO

db - 72日 - オンラインでPythonを学ぶ100日

レコード#

  1. 62 日目のコードを変更して、アカウントとパスワードを作成します。
  2. コードを初めて実行する際に、アカウントとパスワードがない場合は、アカウントとパスワードを作成します。アカウントとパスワードは replit db に保存されます。
  3. 再度実行する際には、アカウントとパスワードが正しい場合にのみアクセスできます。
  4. db の概念についてはまだ少し不明瞭であり、キーと値の処理に問題が発生しています。
  5. for ループの理解が少し難しく、ループのプロセスと結果をすばやく理解することができません。

CODE#

from replit import db
import os, datetime, random, time

correctPassword = "1"


def add(t):
  db[timestamp] = t


def view():
  show = "n"
  for key in dblist:
    if show.lower() == "n" and key != "userinfo":
      print(f"{key}: {db[key]}")
      print("---")
    elif show.lower() == "e":
      break
    show = input("Next or Exit? > ")


while True:
  dblist = db.keys()
  if "userinfo" not in dblist:
    print("Set !")
    username = input("Username > ")
    password = input("password > ")
    salt = random.randint(1000, 9999)
    newpass = hash(f"{password}{salt}")
    db["userinfo"] = {"username": username, "password": newpass, "salt": salt}
  else:
    print("Input !")
    userinfo = db["userinfo"]
    username = input("Username > ")
    password = input("password > ")
    salt = userinfo["salt"]
    newpass = hash(f"{password}{salt}")
    if username == userinfo["username"] and userinfo["password"] == newpass:
      while True:
        os.system("clear")
        menu = input("Welcome\n1: Add\n2: View\n")
        if menu == "1":
          timestamp = datetime.datetime.now()
          print(timestamp)
          add(input("> "))
        elif menu == "2":
          view()
    else:
      print("username or password error!")
    time.sleep(3)


読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。