在Python中设置元素树中的Bool

2024-10-01 11:32:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我想创建一个REST请求参数,在这个参数中使用元素树传递boolPython。可以有人建议我怎么在元素中传递bool树。那个下面抛出一个错误

root = ET.Element('dummy_create')
    ET.SubElement(root, 'name').text = name
    ET.SubElement(root, 'isEvaluate').text = True
    return ET.tostring(root)

我希望我能成为一个布尔。可以有人建议怎么做。我现在得到以下错误:

^{pr2}$

谢谢


Tags: textnamerest元素参数错误createroot
2条回答

要绘制其中一个变体,请执行以下操作:

def encode_bool(value):
    if value:
        return 'yes'
    return ''

然后呢

^{2}$

这样标记看起来像<isevaluate>yes</isevaluate>或{}。这将在解析返回后给您一个字符串'yes'或一个空字符串{},这些字符串在布尔上下文中是True和{}。在

只需将其作为string传递:

name = 'Hello' # dummy name
root = ET.Element('dummy_create')
ET.SubElement(root, 'name').text = name
# try passing in 'true' rather than 'True'
ET.SubElement(root, 'isEvaluate').text = 'true'

ET.tostring(root)
'<dummy_create><name>Hello</name><isEvaluate>true</isEvaluate></dummy_create>'

相关问题 更多 >