我想:
- 检查字符串是否包含对象属性
- 如果是则访问该属性
所以对于类的对象
class Person(object):
name = ""
age = 0
major = ""
def __init__(self, name="", surname="", father="", age =0):
self.name = name
self.surname = surname
self.father = father
self.age = age
self.identity = name +" "+ surname
def __str__(self):
return self.identity
__repr__ = __str__
和对象
person = Person("Earl", "Martin", "Jason", 40)
我想要字符串“名字是什么” 返回 person.name (我已经知道字符串是关于哪个对象的)
最基本的解决方案是为每个属性做案例,但实际代码有很多,我相信我不必手动写出来,我只是编程新手,所以我不是确定用于此的语法是什么
感谢任何帮助
最佳答案
您正在寻找函数 hasattr()
和 getattr()
。
检查属性是否存在:
hasattr(Person(), 'string')
并调用属性:
getattr(Person(), 'string')
关于python - 检查对象属性名称是否出现在字符串python中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39275713/