Python 如何将字符串转换为变量?

Python 如何将字符串转换为变量?,python,python-3.x,Python,Python 3.x,我遇到一个问题,usr_inp是一个字符串 class Student: def __init__(self,name): self.name = name def greet(self): return "Hello " + str(self.name) justin = Student("Justin") eva = Student("Eva") usr_inp = input("Enter your name : ") if u

我遇到一个问题,usr_inp是一个字符串

 class Student:

    def __init__(self,name):
        self.name = name

    def greet(self):
        return "Hello " + str(self.name)


justin = Student("Justin")
eva = Student("Eva")

usr_inp = input("Enter your name : ")

if usr_inp == "justin" or "eva":
    print(usr_inp.greet())
所以我知道如何解决这个问题,还有其他几种方法,但是我想要一种方法来更改上面使用的变量的usr_inp。 请帮助我更改此设置:

justin = Student("Justin")
eva = Student("Eva")

usr_inp = input("Enter your name : ")

if usr_inp == "justin" or "eva":
    print(usr_inp.greet())
为此:

usr_inp = input("Enter your name : ")

if usr_inp == "Justin" or usr_inp == "Eva":
    print(Student(usr_inp).greet())

你的if语句是错误的,
usr\u inp
是一个
字符串,它没有实现
greet()
方法,而
justin
eva
Student
类的实例。

这两行是错误的

if usr_inp == "justin" or "Eva":
    print(usr_inp.greet())
应该是这样,

usr_inp = input("Enter your name : ")

if usr_inp == "justin" or usr_inp == "eva":
    print(Student(usr_inp).greet())

如果usr\u inp==“justin”或“eva”
是错误的。
如果usr\u inp in(“justin”,“eva”):print(Student(usr\u inp).greet()
usr\u inp
是一种
str
方法,它没有实现
greet
方法。