【发布时间】:2015-03-05 11:27:39
【问题描述】:
我感觉这个序列可能会写得更短:
dim = Dimension.objects.get(pk=rows['pk'])
try:
dim.name = rows['name']
except KeyError:
pass
try:
dim.external_flg = rows['external_flg']
except:
pass
try:
dim.ext_owner = rows['ext_owner']
except KeyError:
pass
try:
dim.ext_table_name = rows['ext_table_name']
except KeyError:
pass
try:
dim.ext_start_date_column_name = rows['ext_start_date_column_name']
except KeyError:
pass
try:
dim.ext_end_date_column_name = rows['ext_end_date_column_name']
except KeyError:
pass
我在 Python 代码优化和处理异常方面从未有过任何经验,但我很高兴有一个替代示例如何缩短它。
谢谢!
【问题讨论】:
-
rows是你的字典对象吗? -
也许在codereview.stackexchange.com 上提问会更合适。
-
它的类型(行).__name__可以是'dict'或'list'。
-
bvidal,StackExchange 是否具有将问题移至更合适部分的功能?
标签: python django exception try-catch