繁体   English   中英

rstrip()无法按预期工作

[英]rstrip() not working as expected

我写了以下python代码。 我期望它要做的是将文件“ noise”中的一个随机单词添加到“ raw”的每一行,并将其打印到文件“ dataset”中

#! /usr/bin/python

from random import randint

raw = open("raw_dataset_1", "r")
noise = open("random", "r")
dataset = open("raw_noisy", "w")

lines = noise.readlines()

for line in raw:
    a = randint(1, 5449)
    addNoise = lines[a-1]
    #print a
    #print addNoise
    noisy = (line + addNoise)
    noisy1= noisy.rstrip()
    #print noisy1
    dataset.write(noisy1)

我期望的“数据集”文件是:

city mountain sky sun chalk
bay lake sun tree discussions
beach sea sky sun background

但我得到:

city mountain sky sun 
chalk
bay lake sun tree 
discussions
beach sea sky sun 
background

有人可以指出我的错误吗?

我想您想做noisy = (line.rstrip("\\n") + " " + addNoise)

我对其进行了测试,并且对我有用。

在阅读每一行时使用:

for line in raw:

line末尾包含换行符。 您需要删除它。

尝试使用:

noisy = line.rstrip() + " " + addNoise

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM