簡體   English   中英

在python中多次打印?

[英]Print multiple times in python?

    from simplified_scrapy import SimplifiedDoc, utils
    #simplified_scrapy is framework for extrcting data
    xml = utils.getFileContent('check_in.xml')
    doc = SimplifiedDoc(xml)
    #SimplifiedDoc is a library for parsing data such as HTML and XML
    
    nodes = doc.select('air:EDS_AirCheckInRQ').children
    print (nodes.tag)
    
    for x in nodes:
        print((doc.select('air:EDS_AirCheckInRQ')['Version']),(doc.select('com:Source')))
              
    
    Here is my output:-
    4.000 {'tag': 'com:Source', 'AirlineVendorID': 'CM'}
    4.000 {'tag': 'com:Source', 'AirlineVendorID': 'CM'}
    4.000 {'tag': 'com:Source', 'AirlineVendorID': 'CM'}
    4.000 {'tag': 'com:Source', 'AirlineVendorID': 'CM'}
    4.000 {'tag': 'com:Source', 'AirlineVendorID': 'CM'}
    4.000 {'tag': 'com:Source', 'AirlineVendorID': 'CM'}

這是我只想打印一次的 python 代碼,但是當我運行它時,它給了我多次打印的輸出。 我只想打印一次。 誰能幫我解決為什么這個打印多次而不是一次?

如果您的print()內部for x in nodes:它將為每個x in nodes打印。 只需刪除您的 for 循環,您甚至沒有在循環中使用x

就像 Adamantoisetortoise 所說的那樣,您正在循環打印。 擺脫這個:

for x in nodes:
        print((doc.select('air:EDS_AirCheckInRQ')['Version']),(doc.select('com:Source')))

據我了解,您正在嘗試從節點中提取一些信息您可以嘗試以下操作:

for x in nodes:
        print((x.select('air:EDS_AirCheckInRQ')['Version']),(x.select('com:Source')))

但這可能不起作用,因為我不知道您正在使用什么數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM