跳至内容
菜单
此问题已终结
2 回复
4287 查看

I have a list which collect data, and at one point it returns None and i need to replace this None with a 0. How can i get this done in openerp 7

形象
丢弃
最佳答案

You can iterate the list and check the condition. If you get None value it will insert 0 in new list.

>>> a = [1,2,3,'c',None]

>>> b = []

>>> for x in a:

... if x is None:

... b.append(0)

... else:

... b.append(x)

...

>>> b

[1, 2, 3, 'c', 0]

形象
丢弃
编写者

Thank You @Krutarath,

Already i have done that this way,

late_duration = [['a', 1], ['b', 4], ['c', None]]

late_duration_val_list = [[None if isinstance(b, int) else 0 if b == None else b for b in i] for i in late_duration]

late_duration.append(late_duration_val_list)

print (late_duration_val_list)

Output is,

[['a', None], ['b', None], ['c', 0]]

相关帖文 回复 查看 活动
3
8月 15
22715
1
3月 15
6329
0
2月 16
2970
2
8月 15
6715
1
8月 15
4662