如何正确解析lxml.objectify中的布尔值?

时间:2019-06-11 08:31:36

标签: python boolean lxml lxml.objectify

我正在尝试通过在Python中使用一系列带有数据的CSV并将其作为Pandas数据帧进行迭代,在Python中使用lxml.objectify构建xml。问题是我在数据框中具有“ True”或“ False”值,但是当我尝试构建xml并进行检查时,它们显示为字符串。应该为true / false,小写形式为bool。

我该如何实现?


Application = data_frames['Application'].astype(object).replace(np.nan, '')

root = objectify.Element('Application')
objectify.deannotate(root, cleanup_namespaces=True)
for row in Application.itertuples():        
    root.set('ApplicationDate',row.ApplicationDate)
    root.set('SWDecision', row.SWDecision)
    root.set('DeliveryOptionCode',row.DeliveryOptionCode)
    root.set('ProcessingRequestType',row.ProcessingRequestType)
    root.set('ResubmissionFlag',row.ResubmissionFlag)
   root.set('ApplicationCrossReferenceId',str(row.ApplicationCrossReferenceId))

如果我像这样调试代码,我会收到类型错误

root.set('SWDecision', row.SWDecision)
root.set('ResubmissionFlag',row.ResubmissionFlag)

两者都以“ True”或“ False”的形式存储在熊猫数据框中。

如果将它们转换为字符串,例如python root.set('SWDecision', str(row.SWDecision)),它将调试正常,但是将生成的xml传递给第三方应用程序以读取它时,这些属性出现错误,表示它们必须为布尔值,而不是字符串。

用这些值作为布尔值而不是字符串来构建xml的正确方法是什么?

0 个答案:

没有答案