Как мне создать учетную запись для хранения информации?

StackOverflow https://stackoverflow.com//questions/21068695

Вопрос

Я в настоящее время создаю игру на основе текстовой на основе с входными деньгами, и я хочу, чтобы пользователи хранить свою информацию, чтобы они могли войти в систему позже.Это возможно, не подключение к Интернету?

Это было полезно?

Решение

Я застрял на этой проблеме на неделю, прежде чем я узнал о рассолке.

Для загрузки информации

import pickle
from getpass import getpass

username = raw_input('What would you like your username to be?  ')
username2 = raw_input('Please enter the same username again: ')
while username != username2:
    print 'The usernames do not match.'
    username = raw_input('What would you like your username to be?  ')
    username2 = raw_input('Please enter the same username again: ')
pword = getpass("What would you like your password to be?  ")
pword2 = getpass("Please reenter the password: ")
while pword != pword2:
    print 'The passwords do not match'
    pword = getpass('What would you like your password to be?  ')
    pword2 = getpass('Please reenter the password: ')
money_left = 0
logininfo = [username, pword, money_left]
pickle.dump(logininfo, open( "%s.p" %username, "wb"))
print 'Your username is %s, and your password is %s. You have $%d ingame money.' % (username, pword, money_left)
.

Для получения информации

import pickle
from getpass import getpass    

login = raw_input('Enter your username')
password = getpass("Enter your password: ")
if pickle.load(open("%s.p"%login, "rb"))[1] == password:
    username = pickle.load(open("%s.p"%login, "rb"))[0]
    pword = pickle.load(open("%s.p"%login, "rb"))[1]
    money_left = pickle.load(open("%s.p"%login, "rb"))[2]
    print 'You have successfully logged in as %s and you have $%d ingame money.' %(login, money_left)
.

Это должно работать, это работало для меня.GetPass не является обязательным, но он предотвращает эхо символов, когда вы вводите свой пароль.Вы также можете изменить сумму «Money_Left».Это в основном создает файл с именем «% S.P»% UserName.Поэтому, если ваше имя пользователя является Pickler, он создаст файл под названием Pickler.p.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top