【问题标题】:Getting multiple if statements to print on a single line [duplicate]将多个 if 语句打印在一行上[重复]
【发布时间】:2021-04-22 20:06:19
【问题描述】:

我正在尝试从文本文件中提取单词和整数,并使用 if 语句将它们全部打印在同一行上。我是否需要继续 for 循环以实现输出打印在同一行上?

我正在尝试让它打印帧#,类型:0x0800

with open('wireShark.txt', 'rt') as file_content:
for line in file_content:
    if 'Frame' in line:
        i=line.find(':') 
        idnum = line[0:i] 
        print(idnum)

    if 'Type' in line:
        i=line.find(':')
        idnum4 = line[4:9]
        print (idnum4)

    if '0x0800' in line:
        i=line.find(')')
        idnum5 = line[16:i]
        print (idnum5)

【问题讨论】:

标签: python for-loop nested-loops


【解决方案1】:

正如许多人所注意到的,您无需换行打印。

with open('wireShark.txt', 'rt') as file_content:
for line in file_content:
    if 'Frame' in line:
        i=line.find(':') 
        idnum = line[0:i] 
        print(idnum, end="")

    if 'Type' in line:
        i=line.find(':')
        idnum4 = line[4:9]
        print (idnum4, end="")

    if '0x0800' in line:
        i=line.find(')')
        idnum5 = line[16:i]
        print (idnum5, end="")

end="" 只是告诉 Python:嘿,不要打印换行符。

【讨论】:

  • 是的,这是因为您使用的是 Python 2。请不要使用 Python 2。
  • 知道了!我将如何打破每帧多行的行?
  • @justinlandolt 你是什么意思打破每帧多行的行?
猜你喜欢
  • 2021-06-07
  • 2017-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-17
  • 1970-01-01
  • 1970-01-01
  • 2023-03-12
相关资源
最近更新 更多