Невозможно получить значение из преобразованного замороженного набора python 3 - PullRequest
0 голосов
/ 11 февраля 2020

Я самообучаюсь Python (без опыта программирования) и пытаюсь ответить на этот вопрос:

попросить пользователя ввести столько номеров банковских счетов, сколько он пожелает, и сохранить их в списке изначально. Как только пользователь закончит ввод информации, преобразуйте список в морозильное устройство и распечатайте его.

Это мой код:

# create global variables
b_accounts = []
fzb_accounts = frozenset()
# Create add account function
def addAccount(account):
    b_accounts.append(account)
    print('Account number: {} has been added'.format(account))
    return b_accounts

# create covert from a list to a frozenset function
def convertFz():
    if b_accounts:
        globals()['fzb_accounts'] = frozenset(b_accounts)
        return fzb_accounts
    else:
        print('List of account does not exist!')

# create show account function    
def showAccount():
    convertFz()
    if fzb_accounts:
        #print('Here your enique entered accounts:{}'.format(fzb_accounts))
        for acc in fzb_accounts:
            print(acc)
    else:
        print('No account!')

# create main function
def main():
    done = False
    while not done:
        ans = input('Please select add/show/quit account: ').lower()
        if ans == 'add':
            account = input('Enter account number: ')
            addAccount(account)
        elif  ans =='show':
            showAccount()
        elif  ans =='quit':
            done = True
            print('Bye!')
        else:
            print('Invalid option')

main()

Я хочу добавить следующие номера счетов:

  • 1234
  • 12345
  • 1234

на выходе должно быть:

  • 1234
  • 12345

Спасибо, код обновлен и работает как положено.

...