我正在解析列出一些服务器的xml文件

2个服务器的示例xml:

<cluster-information>
    <clustering-available>true</clustering-available>
    <clustered>true</clustered>
    <node>
      <id>SomeIDnum</id>
      <address>/someIP:port</address>
      <local>false</local>
    </node>
    <node>
      <id>SomeIDnum</id>
      <address>/someIP:port</address>
      <local>false</local>
    </node>
  </cluster-information>


我正在使用以下方法获取ID和地址

cluster=myroot.find('cluster-information/clustered')
if cluster.text == 'true':
    print("|Cluster is "+cluster.text+" |")
    nodes=myroot.find('cluster-information')
    for x in nodes.findall('node'):
        id=x.find('id')
        ip=x.find('address')
        print("Node:"+id.text)
        print("IP "+ip.text)
    print("|")


结果是:

|集群为真|
节点:someID
IP /x.x.x.x:端口
节点:someotherID
IP /x.x.x.x:端口
|

我需要输出看起来像这样:
|集群为真| Node:someID
IP /x.x.x.x:端口
节点:someotherID
IP /x.x.x.x:端口
|

基本上,我需要删除从for循环创建的第一个换行符。

最佳答案

我需要删除从for循环创建的第一个换行符。


第一个换行符不是由for循环创建的-它是由

    print("|Cluster is "+cluster.text+" |")


在循环之前。要删除它,请更改为

    print("|Cluster is "+cluster.text+" |", end="")

07-28 14:10