Python で掲示板システム (BBS) をエミュレートするコードを書いています。
このコードを使用して、既に入力されたメッセージを表示するか、後で表示するメッセージを入力するかのオプションをユーザーに提供したいと考えています。
私のコードは次のとおりです。
def BBS():
print("Welcome to UCT BBS")
print("MENU")
print("(E)nter a message")
print("(V)iew message")
print("(L)ist files")
print("(D)isplay file")
print("e(X)it")
selection=input("Enter your selection:\n")
if selection=="E" or selection=="e":
message=input("Enter the message:\n")
elif selection=="V" or selection=="v":
if message==0:
print("no message yet")
else:
print(message)
elif selection=="L" or selection=="l":
print("List of files: 42.txt, 1015.txt")
elif selection=="D" or selection=="d":
filename=input("Enter the filename:\n")
if filename=="42.txt":
print("The meaning of life is blah blah blah ...")
elif filename=="1015.txt":
print("Computer Science class notes ... simplified")
print("Do all work")
print("Pass course")
print("Be happy")
else:
print("File not found")
else:
print("Goodbye!")
BBS()
メッセージを入力すると、コードは v が選択された後にメッセージを表示することになっています。または、メッセージが入力されていない場合、v が選択された場合は「まだメッセージがありません」が表示されることになっています。
エラーが発生します:
Traceback (most recent call last):
File "C:\Program Files\Wing IDE 101 4.1\src\debug\tserver\_sandbox.py", line 1, in <module>
# Used internally for debug sandbox under external interpreter
File "C:\Program Files\Wing IDE 101 4.1\src\debug\tserver\_sandbox.py", line 15, in BBS
builtins.UnboundLocalError: local variable 'message' referenced before assignment
WingIDE 使用中に v を選択した場合。
このコードを修正してください。