+运营商在这条线上做了什么?

时间:2017-08-29 01:03:57

标签: openerp odoo-10

我正在尝试修改现有模块中的方法以适应功能。 +运算符在这一行中做了什么?

for line in payment.move_line_ids + expense_sheet.account_move_id.line_ids:

2 个答案:

答案 0 :(得分:6)

你好M.E。,

解决方案

  • 使用的运算符是两个List/String/Tupple的连接/组合。

实施例

  1. 加号(+)运算符使用两个List

      

    a = [1,2,3]
      b = [4,5]
      打印a + b
      输出= [1,2,3,4,5]

  2. +运算符使用两个String

      

    a =“Vora”
      b =“mayur”
      打印a + b
      output =“vora mayur”

  3. +运算符使用两个tupple

      

    a =(1,2,3)
      b =(4,5)
      打印a + b
      输出=(1,2,3,4,5)

答案 1 :(得分:5)

account.move.line payment.move_line_ids条记录从expense_sheet.account_move_id.line_ids__add__到单个记录集中,然后进行迭代。请注意,如果两个操作数中都存在相同的account.move.line,则 Bextradata = (U8_WMC *) malloc(Size); memset(Bextradata, 0,Size); memcpy(BextraData,pdata + 18,Size); (+)操作的结果可能包含重复项。如果您想避免重复,请使用concatenates