try-except 和字典列表
try-except and a list of dictionary
我有一个字典列表来描述格式。我想使用 try/except 构造仅打印“US”。因为我可能有更多列表,其中没有“国籍”标签。我只想到 if/else 构造。请帮我。谢谢!
list_components = js['results'][0]['list_components']
try:
for item in list_components:
item["types"] == ["nationality", "political"]
print('The nationality information for the list:', item["short_name"])
except:
print('No nationality is available for this list.')
太大 post 作为评论,所以我 post 编辑它作为答案,
这个代码适合你吗?我的意思是,try, except
在这里什么都不做......但是如果这不是你想要的,请告诉我
list_components = js['results'][0]['list_components']
try:
for item in list_components:
item["short_name"] == 'US' and item["types"] == ["nationality", "political"] and print('The nationality information for the list:', item["short_name"])
except:
print('No nationality is available for this list.')
这是您想要实现的一种非常天真的方法。但这不是一个好的做法。这就像从某物中创造出某物,而忽略了程序员采用的所有良好规则。
list_components = js['results'][0]['list_components']
for item in list_components:
try:
#Generate error when there is no nationality otherwise print nationality
status = item["types"][0] == "nationality"
status and print("Nationality: ", item["short_name"])
raise ValueError
except:
#Print prompt
not status and print("No Nationality")
这个解决方案不需要任何 try/catch 结构,可以完全用 if-else 解决。如果其他人需要它,这里有一个更好、更简单的解决方案。
for item in list_components:
print("Nationality: " item["short_name"]) if item["types"][0] == "nationality" else print("No Nationality")
我有一个字典列表来描述格式。我想使用 try/except 构造仅打印“US”。因为我可能有更多列表,其中没有“国籍”标签。我只想到 if/else 构造。请帮我。谢谢!
list_components = js['results'][0]['list_components']
try:
for item in list_components:
item["types"] == ["nationality", "political"]
print('The nationality information for the list:', item["short_name"])
except:
print('No nationality is available for this list.')
太大 post 作为评论,所以我 post 编辑它作为答案,
这个代码适合你吗?我的意思是,try, except
在这里什么都不做......但是如果这不是你想要的,请告诉我
list_components = js['results'][0]['list_components']
try:
for item in list_components:
item["short_name"] == 'US' and item["types"] == ["nationality", "political"] and print('The nationality information for the list:', item["short_name"])
except:
print('No nationality is available for this list.')
这是您想要实现的一种非常天真的方法。但这不是一个好的做法。这就像从某物中创造出某物,而忽略了程序员采用的所有良好规则。
list_components = js['results'][0]['list_components']
for item in list_components:
try:
#Generate error when there is no nationality otherwise print nationality
status = item["types"][0] == "nationality"
status and print("Nationality: ", item["short_name"])
raise ValueError
except:
#Print prompt
not status and print("No Nationality")
这个解决方案不需要任何 try/catch 结构,可以完全用 if-else 解决。如果其他人需要它,这里有一个更好、更简单的解决方案。
for item in list_components:
print("Nationality: " item["short_name"]) if item["types"][0] == "nationality" else print("No Nationality")