i porting sonos controller written in python language. i'm struggling understand method call doing:
def __send_command(self, endpoint, action, body): headers = { 'content-type': 'text/xml', 'soapaction': action } soap = soap_template.format(body=body) specifically .format method. far can tell, soap, soap_template , body strings.
where:
soap_template = '<s:envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingstyle="http://schemas.xmlsoap.org/soap/encoding/"><s:body>{body}</s:body></s:envelope>' and
body = '<u:getpositioninfo xmlns:u="urn:schemas-upnp-org:service:avtransport:1"><instanceid>0</instanceid><channel>master</channel></u:getpositioninfo>' could please explain in plain english .format method doing?
python has string formatting. way format strings. (prepare them, put them together)
example:
>>> "hello {name}".format(name="garry") 'hello garry' or, better example:
>>> name in ["garry", "inbar"]: print "hello {name}".format(name=name) hello garry hello inbar in case, soap_template string contains {body} tag in it, , function takes , adds body passed function string.
Comments
Post a Comment