>>> my_object.name = 'stuff'
>>> my_str = 'name'
>>> my_object[my_str] # won't work because it's not a dictionary :)
如何访问my_object
上定义的my_str
字段?
答案 0 :(得分:20)
getattr(my_object, my_str)
答案 1 :(得分:1)
>>> myobject.__dict__[my_str]
'stuff'
答案 2 :(得分:1)
一般情况下,您无法执行__dict__
方法。什么将始终有效
getattr(myobject, my_str)
如果你想要类似dict的访问,只需用一个重载的索引操作符来定义一个类。
答案 3 :(得分:0)
您可以通过定义一小类方法getitem和setitem来为类对象的class ZaborView(APIView):
def post(self, request):
serializer = ZaborPostSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
return Response({'status': 'Success'})
else:
return Response({'status': 'Failed'})
运算符提供支持。有关其他支持的信息,请参阅文档中接下来的几个条目,以获取其他支持。