Python使用if语句输出字典时直接跳转else块问题求解
你的代码存在以下几个问题:
- Python大小写敏感:
- 定义的字典变量为
Database,if分支中调用的database属于未定义变量 - 接收用户输入的变量为大写
X,if判断中使用的小写x属于未定义变量 - Python内置打印函数是小写
print(),你使用的Print会触发名称错误
- 定义的字典变量为
input()函数的返回值默认是字符串类型,你直接和整数1做相等判断,类型不匹配会永远返回False,这就是你代码直接走else分支的核心原因。
修正后的完整代码如下:
Database = {"name" : "Nicholas"} print("welcome to database\n") print("Enter 1 to display database\n") print("Enter 2 to delete database\n") X = input("make entry here:") if X == "1": print(Database) else: print(" error")
如果需要用整数做判断,也可以将输入转换为int类型:
X = int(input("make entry here:")) if X == 1: print(Database)
内容的提问来源于stack exchange,提问作者Nicholas
相关产品推荐
相关产品推荐

