编了一段示例代码,大概如下:
class User(object):
def __init__(self, school, trader):
self.school = school
self.trader = trader
class School(object):
def __init__(self, id):
self.id = id
class Trader(object):
def __init__(self, num):
self.num = num
school_1 = School(1)
trader_1 = Trader(1)
user = User(school_1, trader_1)
# search_arr 会根据须求变化
search_arr = ['school', 'id']
v = user
for field in search_arr:
v = getattr(v, field)
print(v)
主要想完成根据“search_arr”的变化,动态获取“v”值,现在代码写出来了,使用了一个for循环,但是觉得不满意,想问一下有没有什么效率更高的方式,像列表循环或者迭代器的方式完成以上代码for的功能