双换行而不是单换行

时间:2019-02-11 11:15:06

标签: python c++ python-3.x

最近,我遇到了一个编码挑战中提出的问题。任务是处理给定格式的数据并输出正确的格式。例如,假设我有N个字符串的数组(例如words []),每个字符串都需要换行打印,我遵循以下方法:

for(i = 0; i < N; ++i)cout<<words[i]<<"\n"

在C ++中,

for word in words:
    print(word)

在Python中。假设数组为:

words = ["apple", "mango", "banana"]

因此上述代码的正确输出必须是:

apple
mango
banana

但获得以下输出:

apple

mango

banana

请帮助我找出错误。

3 个答案:

答案 0 :(得分:0)

我想您在列表(数组)中每个元素的末尾已经有一个换行符。

您可以尝试以下代码

for word in words:
    print(word, end='')  

答案 1 :(得分:0)

我认为实施没有问题。查看来自rextester.com的以下结果。

Python:https://rextester.com/ZPMRZ45393

C ++:https://rextester.com/CLB25868

您是否正在使用Linux终端输出字符串?您正在使用IDE吗?检查您的设置。如果您已在IDE中设置了设置,以便在每次打印语句时自动创建新行,那么这就是为什么您会看到双行的原因。

答案 2 :(得分:0)

您的代码没有错:

words = ["apple", "mango", "banana"]
for word in words:
    print(word)

输出:

apple
mango
banana