我有query.oderby,这是一个dict对象列表。
[{'name': 'asc'}, {'user_id': 'desc'}]
我检查列表是否包含带有以下内容的user_id
for query in query.orderby:
if query.keys().__contains__('user_id'):
if query['user_id'] == 'desc':
#then sort in desc order
elif query['user_id'] == 'asc':
#the sort in asc order
else:
#move to next dict object
query = query + 1
else:
#do something else if no user_id found in the list of dict
如果不使用包含()并使用for循环,我如何检查user_id? 我试过了
if query.keys() == 'user_id':
#then do something
但这没有帮助。
答案 0 :(得分:2)
你可以这样做:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div style="position:relative;">
<div class="fill"></div>
<img class="mask" src="https://static.licdn.com/scds/common/u/img/pic/pic_profile_strength_mask_90x90_v2.png">
<div class='line'>
<div>
</div>
</div>
</div>
您可以找到有关>>> ar = [{'name': 'asc'}, {'user_id': 'desc'}]
>>> any('user_id' in elt for elt in ar)
True
here的更多信息。
希望它会有所帮助。
答案 1 :(得分:0)
没有for循环..
any(map((lambda x: True if 'user_id' in x.keys() else False ), ar ))
答案 2 :(得分:0)
如果你想让你的代码看起来很简单,你可以使用这样的东西。
l = [{'name': 'asc'}, {'user_id': 'desc'}]
for query in l:
if (query.has_key('user_id')):
print "Key Found"