- 遇到方式3问题
def test(node, xml_tag_attrib=None):
print(xml_tag_attrib) # {'1': 10, '2': 20} 【打散方式】
print(*xml_tag_attrib) # 1 2 【打散方式,遍历】
# print(**xml_tag_attrib) #报错
find_body_attrib(node, **xml_tag_attrib)
find_body_attrib2(node, **xml_tag_attrib)
def find_body_attrib(xml_node, **kwargs):
if not kwargs:
return True
print(kwargs)
def find_body_attrib2(xml_node, kw1=1,kw2=2):
# if not kwargs:
# return True
print(kw1,kw2)
# 方式1,正常调用
find_body_attrib('test',test=1)
# 方式2,字典打散
xml_tag_attrib={'1':10,'2':20}
find_body_attrib('test',**xml_tag_attrib)
# 方式3,其他函数调用
test(1,xml_tag_attrib={'1':10,'2':20})
# 方式4,其他函数调用
# test(1,xml_tag_attrib={'1':10,'2':20}) #报错 find_body_attrib2() got an unexpected keyword argument '1'
test(1,xml_tag_attrib={ 'kw1':10,'kw2':20})