我正在编写一个代码来模拟 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 时。
请帮助我更正此代码。