1

我正在使用 ZEEP 连接到 NetSuite。创建发票时我需要传递给 NS 的参数之一是“类”。如果我理解正确,以下行无法编译的原因是因为 'class' 是保留关键字。

invoice = invoiceType(
    customFieldList = customFieldList,
    entity = entityRecord,
    subsidiary = subRecord,
    department = departmentRecord,
    location = locationRecord,
    class = classRecord
)

我没有将最后一个参数从“class”更改为“Class”或其他参数的选项,因为这是 NetSuite 期望调用的参数。我可以在 python 中使用任何替代方法吗?有没有办法在将它作为参数传递时逃避它?

4

1 回答 1

5

您需要使用**{...}语法来传递名称为保留字的关键字参数。

invoice = invoiceType(
              customFieldList=customFieldList, 
              entity=entityRecord,
              subsidiary=subRecord,
              department=departmentRecord,
              location=locationRecord,
              **{'class': classRecord}
           )

这样做是用一个名为的键创建一个字典,'class'然后将字典展开到一个参数中,这样您就不必指定文字class关键字。

于 2019-03-03T22:38:22.147 回答