在文件中加入一个单词行

时间:2015-10-07 20:12:51

标签: python python-3.x

我有一个单词格式的文件用于行,我想用一个空格加入行,我试试这个,但它不起作用

for line in file:
    new = ' '.join(line)
    print (new)

这也不起作用

    new = file.replace('\n'', ' ')
    print (new)

5 个答案:

答案 0 :(得分:2)

您还可以使用list comprehensions

//html
[self.myScrollView setContentSize:CGSizeMake(self.view.frame.size.width, 20000)];
NSString * htmlString = item[@"content"];

NSAttributedString * attrStr = [[NSAttributedString alloc] initWithData:[htmlString dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil];

_htmlLabel.attributedText = attrStr;

答案 1 :(得分:1)

您可以将每一行添加到列表中,然后在以下后加入:

L = []
for line in file:
    L.append(line.strip('\n'))

print " ".join(L)

您当前的解决方案尝试将join用于字符串而不是列表

答案 2 :(得分:1)

此问题的一行解决方案如下:

print(open('thefile.txt').read().replace('\n', ' '))

答案 3 :(得分:0)

这就是我想你想要的......

' '.join(l.strip() for l in file)

答案 4 :(得分:0)

另一种方式:

with open('yourfilename.txt', 'r') as file:
    words = ' '.join(map(str.rstrip, file))

从其他几个答案中可以看出,file是一个迭代器,所以你可以遍历它,在每个循环中它会给你一个从文件读取的行(包括\n at结束,这就是为什么我们都把它剥离了。)

从逻辑上讲,map会将给定的函数(即str.rstrip)应用于读入的每一行,并将结果传递给join