是否有可能用“map”循环重写这个棘手的dict函数调用(pythonic“cases”..)?
有一些 java 函数调用,首先我使用“if-elif”语句,然后决定使用 dict,如您所见,我尝试使用 dict 没有例外。
我想通过将“dict”调用映射到列迭代器来重写“for”循环。可能吗 ?
type_resolver={'java.lang.String' : set.getString,
'java.lang.Integer' : set.getInt,
#'java.lang.util.Date' : lambda x: None,#set.getTimestamp,
'java.lang.Short' : set.getShort,
#'java.util.Collection': lambda x: None,
#'java.util.Date': lambda x: None,
#'boolean': lambda x: None
}
while set.next():
for column in COLUMNS:
try:
data=type_resolver[STRCT[column]](column)
except KeyError:
data=None
DATAR[column].append(data)