【问题标题】:Reading Words from a File and Writing Them on The Same Line从文件中读取单词并将它们写在同一行
【发布时间】:2017-12-08 18:59:12
【问题描述】:

我有一个每行包含一个单词的文件。每个句子由一个空行分隔。我想读取文件并将一个句子的整个单词写在同一行。例如:

This 
is 
a
sample
input

Hello
World
!!

想要的输出是:

This is a sample input
Hello World !!

我试试这个:

file = open('Words.txt', "r")
Writfile = open('Sent.txt','w')

for line in file:
    if line in ['\n']:
        Writfile.write('\n')
    else:
        Writfile.write(line + " ",)

【问题讨论】:

标签: python python-2.7


【解决方案1】:

您可以尝试这样做:

with open("infile.txt", "r") as infile:
  string = infile.read().split("\n\n")

with open("outfile.txt", "w") as outfile:
  for s in string:
    outfile.write(s.replace("\n"," ") + "\n")

输出写入文件:

This  is  a sample input
Hello World !!

【讨论】:

    【解决方案2】:

    做这样的事情:

    input = """This
    is
    a
    sample
    input
    
    Hello
    World
    !!
    """
    
    import StringIO
    fi = StringIO.StringIO(input)
    lines = fi.read().split("\n")
    one_line = " ".join(lines)
    print one_line
    

    将输出:

    This is a sample input Hello World !!

    StringIO 只是用来伪造文件的读取

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-26
      • 1970-01-01
      • 2022-10-23
      • 2021-01-11
      相关资源
      最近更新 更多