2017-02-06 16 views
0

Я делаю упражнения на codeabbey.com, чтобы очистить ржавчину, и я продолжаю сталкиваться с этой небольшой, но все же неприятной проблемой. Я хочу, чтобы мои программы выплевывали одну строку из n элементов вывода , а затем - новую строку для любых n строк данного ввода, но мои программы выплевывают одну строку (n-1), новую строку, а затем последний элемент.Удалить новую строку в конце цикла for - python 2.x

Ниже приведен пример, в котором я дал первый ряд пар, подлежащих обработке, то пары сами, и я поставлена ​​задача нахождения минимума (Пожалуйста, простите мое ленивое использование уже существующих функций):

quanta = int(raw_input()) 
print "\n" 

for i in xrange(quanta): 
    a = raw_input().split() 
    a = map(int, a) 
    print min(a), 

и этот вход копирования вставить в командную строку:

3 
5 3 
2 8 
100 15 

Я ожидал этот вывод:

3 2 15 

, но вместо этого я получаю это выход:

3 2 
15 

тогда Мой вопрос как мне избавиться от этого символ новой строки?

+1

Я не могу воспроизвести это. Запустив код, вставив вход, я получаю ожидаемый результат. В выводе, создаваемом вашим скриптом, нет дополнительной строки. –

+0

Может быть, проблема с моим терминалом? Я просто использую стандартный терминал mac os. –

+0

Я тестировал это на стандартном терминале Mac OS X. –

ответ

0

Я смог воспроизвести. При этом в копии буфера:

3 
5 3 
2 8 
100 15 

при выполнении сценария и вставки этого без закрывающего новой строки сценарий остается на a = raw_input().split() линии третьего входного сигнала, но уже выводится на min из двух строк выше (3 и 2), поэтому, когда вы нажмете новую строку, тогда raw_input войдет в новую строку, и будет напечатано последнее min (15).

Одним из решений является только печать в конце:

quanta = int(raw_input()) 
print "\n" 

res = [] 
for i in xrange(quanta): 
    a = raw_input().split() 
    a = map(int, a) 
    res.append(min(a)) 

print(" ".join(str(i) for i in res)) 

Другой должен также включать в себя символ новой строки в копию буфера (на MacOs вам нужно перетащить кнопку мыши немного ниже линии для получения выбранной новой строки)

+0

Спасибо за помощь! Это устранило проблему даже в терминале. –

+0

@ColeWhetstone рад, что это трюк, вы можете принять ответ? – hansaplast