0

だから私がやろうとしているのは、すべてのユーザー名とパスワードをテキストファイルから辞書にロードしてそれらを呼び出すことです...

     def createacc():
                x = 0
                while x != 200:
                    print("\n")
                    x+=1
                answer = {}
                error = None
                with open('usernames.dat', 'r') as document:
                    for line in document:


                        n = line.replace("\n'","")

                        arts = n.replace("[","")

                        parts = arts.replace("['","")

                        nparts = parts.split("=")

                        line = parts


                        if not line:  # empty line?
                            continue
                        answer[line[0]] = line[1:]
                print("\n\n\n\n\n")
                print(answer)
                print("\n\n\n\n\n")


                if request.method == "POST":
                    if request.form['username'] == '' or request.form['password'] == "" or request.form['code'] != "30286":
                        error="Faliure to create account!! please try again"
                    else:
                        acc = open("usernames.dat","a+")

                        a = acc.readlines()
                        aaa = request.form['username'] +"="+ request.form['password'] + "\n"
                        acc.writelines(aaa)
                        acc.close()
                        return redirect(url_for('sms'))
                return render_template('newacc.html',error=error)

そして、私の辞書がどのように見えるかを期待していたのは、次のようになります

{'admin':'admin', 'PPGC': 'Default', 'DELTA': 'Readme'}

そして私が得ている結果は

{'a': 'dmin=admin\n', 'P': 'PGC\n', 'D': 'ELTA\n', 'N': 'AVI\n'}

希望の辞書を入手するにはどうすればよいですか?

4

1 に答える 1

2

あなたのプログラムはユーザー名とパスワードをテキストファイルに書き込んでいますか? はいの場合、JSON またはその他のデータ交換形式を使用することをお勧めします。たとえば、jsonを使用すると、これを行うことができます

import json

user_dict = {'some user': 'some password'}

with open('my_database.json', 'w') as db:
    json.dump(user_dict, db)

# Now the data can be can easily loaded
user_data = json.load(open('my_database.json'))

# This will get you the dictionary back. 
于 2013-10-10T03:09:30.653 に答える