Python3 里需要给 100 个变量赋值后存入数据库 除了每次赋值时使用 try except 外还有其它比较简便的方法吗

2018-06-07 09:59:35 +08:00
 whereabouts
var001 = func001(args)
var002 = func002(args)
var003 = func003(args)
...
因为有些函数按照设计会报错,报错直接按 None 或者""存入数据库,为了避免函数报错时程序不再执行下面的代码,加了
try:
var001 = func001(args)
except Exception as e:
pass #or do something

这样的话 100 个赋值语句,try except 要写 100 次,除了傻瓜式的写 100 词还有其它比较简便的方法吗?
1852 次点击
所在节点    程序员
8 条回复
undertonememorie
2018-06-07 10:01:55 +08:00
var001 = ‘’
var002 = ‘’
var003 = ‘’
undertonememorie
2018-06-07 10:02:23 +08:00
var001 = ‘’
var002 = ‘’
var003 = ‘’
try:
var001 = func001(args)
vicalloy
2018-06-07 10:06:50 +08:00
应当就一个 for 循环的事吧
for v in [1, 2, 3, 4, 5]:
....pass
newbieo0O
2018-06-07 10:08:17 +08:00
跑一遍 fun 后解构赋值?
clino
2018-06-07 10:09:54 +08:00
弄个函数数组,来一个 for 循环,结果也 append 到一个数组里
vicalloy
2018-06-07 10:10:37 +08:00
抱歉,看错了,应当函数不同。

def ignore_exception(func, *args, **kwargs):
....func(*args, **kwargs)

for f in [func1, func2, func2]:
....ignore_exception(f, arg1)
MicroCatPad
2018-06-07 10:11:02 +08:00
可以用装饰器
CosimoZi
2018-06-07 10:14:05 +08:00
反射了解一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/461099

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX