首页 > 解决方案 > 我在 Python 中遇到问题 这不是错误,但它没有按我想要的那样工作

问题描述

随机导入

而真:

x = input("What Is Your Name ? : ") 
a = ["Topper", "Loser", "Average"]

if x == ("Krish", "krish"):
    print("Krish Is Topper")

elif x == ("Gazal", "gazal"):
    print("Gazal Is Loser")
    
elif x == (" "):
    print("Please Enter A Name")
    
elif x == type(float):
    print("Please Enter A Name")

elif x != ("Krish", "krish", "gazal", "Gazal"):
    print((x ) + (" ") + ("Is ") + ("a") + (" ") + (random.choice(a)))

如果我输入“Krish”或“krish”并且如果我输入“Gazal”或“gazal”,我想要打印 Topper 的解决方案,它应该打印失败者。如果输入是其他任何东西,而不是“Krish”、“krish”、“gazal”或“Gazal”,它应该从“A”列表中随机选择一个。但它不工作请任何人都可以检查并确保它。

标签: python

解决方案


你可以这样做:

import random
alist = ['Topper', 'Loser', 'Average']
names = {'krish': alist[0], 'gazal': alist[1]}
name = input('What is your name? ')
if (nickname := names.get(name.lower(), None)):
    print(f'{name} is {nickname}')
else:
    print(random.choice(alist))

推荐阅读