私はコンピューター サイエンスに興味がある高校の初心者プログラマーです。私は、Mike Dawson の本、Learning to program for the全くの初心者のための Python、第 3 版を使用して、Python でプログラミングすることを独学しています。. 新たに習得した OOP の知識を実践するためのプログラムを作成しています。このプログラムは、プレーヤーが銀行口座を開設したり、現金を引き出し/入金したり、為替レートを取得したり、ある口座から別の口座に送金したり、その他の機能を実行できる銀行をシミュレートします。ユーザーがアクセスできる複数のアクセス可能なアカウントがあるという事実をシミュレートするプログラムの主要部分として、プログラムに深刻な問題があります。どうすればよいのか、それが正しい方法なのかはわかりましたが、all_accounts という空のリストであるクラス属性を作成してみました。アカウントがインスタンス化されるたびに、インスタンスがリストに追加されます。プレーヤーが現金の引き出し/入金などのメニュー オプションを選択したときに、オブジェクトの属性 (残高など) を変更できるように、リスト内のインスタンスにアクセスできるようにしたいと考えています。これを行う方法がわかりません.3日間ほど答えを探していましたが、何も見つかりませんでした. 私は初心者のプログラマーなので、私のコードはおそらく不十分に書かれていると見なされることに注意してください。コードがどのように動作し、機能するかを人々が完全に理解する必要があると感じているため、コード全体を以下に掲載します。また、私のコードに正しくない点や改善できる点があれば、遠慮なくお知らせください。私は常に学習に対してオープンです。私のコードに正しくない点や改善できる点があれば、遠慮なくお知らせください。私は常に学習に対してオープンです。私のコードに正しくない点や改善できる点があれば、遠慮なくお知らせください。私は常に学習に対してオープンです。
class Account(object):
"""An interactive bank account"""
wallet = 0
all_accounts = []
# initial
def __init__(self, ID, bal):
self.ID = ID
self.bal = bal
print("A new account has been opened!")
Account.all_accounts.append(self)
def withdraw(self, w_input):
if w_input < self.bal or w_input == 0:
print("That is not a valid amount. Sending you back to menu.\n")
Menu()
else:
self.bal = self.bal - w_input
print("You withdrew $" + str(w_input) + ".\n")
wallet += w_input
print("You wallet now contains $" + Account.wallet)
Menu()
def deposit(self):
# Whatever
def Menu():
print(
"""
0 - Leave the Virtual Bank
1 - Open a new account
2 - Withdraw money
3 - Deposit money
4 - Transfer money from one account to another
5 - Get exchange rates(Euro, Franc, Pounds, Yuan, Yen)
"""
) # Add more if necessary
choice = input("What would you like to do?: ")
while choice != "0":
if choice == "1":
account_name = input("What is your account's ID?: ")
account_bal = float(input("How much money would you like to put into the account?(USD): "))
account_name = Account(ID = account_name, bal = account_bal)
Menu()
elif choice == "2":
account_choice = input("What is your account ID?: ")
if account_choice in instance.Account.all_account:
withdraw_choice = input("How much money would you like to withdraw?: ")
account_choice.withdraw(w_input = withdraw_choice)
else:
print("Nope.")
if choice == "0":
print("\nThank you for visiting the virtual bank!")
input("Press the [ENTER] key to exit the program.")
Menu()