С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.69/121: Рейтинг темы: голосов - 121, средняя оценка - 4.69
20 / 21 / 6
Регистрация: 30.06.2015
Сообщений: 431
1

Как выводить результат программы в одну строку?

21.03.2016, 17:44. Показов 22283. Ответов 23
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача Напишите программу, которая принимает на вход список чисел в одной строке и выводит на экран в одну строку значения, которые повторяются в нём более одного раза.

Для решения задачи может пригодиться метод sort списка.

Выводимые числа не должны повторяться, порядок их вывода может быть произвольным.
мой код
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
lst = list(input())
x = 0
l = []
for i in lst:
    if lst.count(i) !=1:
        l.append(i)
 
l2 = set(l)
l2= list(l2)
l2.remove(' ')
while x != len(l2):
    print(l2[x])
    x +=1
Как выводить результат в строку?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.03.2016, 17:44
Ответы с готовыми решениями:

Пытаюсь сделать калькулятор со вводом в одну строку, начал с прибавления, не хочет выводить конечный результат с функции
#include <iostream> #include <string> #include <cmath> using namespace std; void err() {...

Как в питоне выводить буквы в одну строку по очереди?
Здраствуйте! Подскажите пожалуйста, как с помощью модуля time можно сделать так, чтобы выводилась,...

Как в цикле выводить каждый раз только одну строку файла?
Есть какой то файл Input.txt и в нем есть данные int,string,int,int : 1,Иванов Иван...

=importxml как сделать результат в одну строку
Нашла довольно интересную функцию в Google таблицах. :umnik: Можно брать данные напрямую с сайтов,...

Как вывести результат mySQL запроса в одну строку?
Итак, какая дилема, такая проблема - Время решать это всё с SQL'ем.... У меня есть код, который...

23
Эксперт по компьютерным сетям
5901 / 3358 / 1036
Регистрация: 03.11.2009
Сообщений: 10,009
21.03.2016, 17:55 2
Python
1
2
l = input().split()
print(*({x for x in l if l.count(x) > 1}))
1
20 / 21 / 6
Регистрация: 30.06.2015
Сообщений: 431
21.03.2016, 19:24  [ТС] 3
круто вы решаете такие задачи в пару строк и за пару минут...есть куда мне стремиться...но могли бы вы мне помочь разобраться в моем коде?не вертикально, а горизонтально?
0
Эксперт по компьютерным сетям
5901 / 3358 / 1036
Регистрация: 03.11.2009
Сообщений: 10,009
21.03.2016, 19:31 4
можно и подлиннее:

Python
1
2
3
4
5
6
7
8
l = input().split()
 
s = set()
for x in l:
    if l.count(x) > 1:
        s.add(x)
 
print(*s) # print(" ".join(s))
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
21.03.2016, 20:07 5
Цитата Сообщение от izuchaju_python Посмотреть сообщение
Для решения задачи может пригодиться метод sort списка.
Не на что не намекает?
0
Jabbson
21.03.2016, 20:11
  #6

Не по теме:

может пригодиться... а может и не пригодиться :D

0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
21.03.2016, 20:18 7
Оно то так но если сильно заботится об производительности, то теоретически сортировка списка может улучшить эффективность в равнении с постоянными вызовами count. Но если думать дальше то может тогда лучше уже завести dict
0
5047 / 3392 / 1156
Регистрация: 21.03.2016
Сообщений: 8,214
21.03.2016, 20:26 8
зачем так было мудрить?

Python
1
2
3
4
5
6
lst =input().split()
l = []
for i in lst:
    if lst.count(i)!=1 and i not in l :
        l.append(i)
print(' '.join(l))
0
Эксперт по компьютерным сетям
5901 / 3358 / 1036
Регистрация: 03.11.2009
Сообщений: 10,009
21.03.2016, 20:33 9
Semen-Semenich, а чем у Вас проще/лучше?
0
5047 / 3392 / 1156
Регистрация: 21.03.2016
Сообщений: 8,214
21.03.2016, 20:37 10
я не сказал что проще и лучше.я взял основу кода автора и убрал лишнее заменив условием and получив требуемый результат
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
21.03.2016, 21:12 11
Python
1
2
3
4
5
6
7
8
9
    l = [1, 4, 5, 4, 1, 6, 4, 6, 4, 4, 7]
    l.sort()
    n = 0
    for i in range(1, len(l)):
        if l[i] == l[n]:
            if i - n == 1:
                print(l[i])
        else:
            n = i
0
20 / 21 / 6
Регистрация: 30.06.2015
Сообщений: 431
22.03.2016, 11:42  [ТС] 12
Python
1
print(*s) # print(" ".join(s))
был бы признательным тому, кто даст ссылку о прочтении такого вывода.
0
641 / 481 / 179
Регистрация: 28.05.2012
Сообщений: 1,416
22.03.2016, 12:00 13
1:
Распаковка

Для того, чтобы сделать использование функций ещё удобнее, в Python есть оператор * — распаковка. Его можно применять только применительно к параметрам вызываемой функции. При этом происходит следующее: из объекта, к которому применяется распаковка, извлекаются отдельные элементы и передаются в качестве отдельных параметров: Рассмотрим пример:
Python
1
2
3
4
5
6
7
def func1():
    return 2, 5, 7
 
def func2(x, y, z):
    print(x + y + z)
 
func2(*func1())
Здесь функция func1() возвращает кортеж из трёх чисел, а функция func2() принимает на вход три элемента. Результат работы первой функции можно передать сразу во вторую, если распаковать результат её работы.
Другой пример использования распаковки --- это передача одного и того же набора параметров в разные функции:

Python
1
2
3
4
5
6
7
8
9
def func1(x, y):
    print(x + y)
 
def func2(x, y):
    print((x ** 2 + y ** 2) ** 0.5)
 
pars = (3, 7)
func1(*pars)
func2(*pars)
Очень удобно использовать распаковку — внутри функции print:

Python
1
2
3
4
5
6
def fibonacci(n):
    fib1, fib2 = 0, 1
    for i in range(n):
        fib1, fib2 = fib2, fib1 + fib2
        yield fib1
print(*fibonacci(10))
Таким образом, можно быстро выводить содержимое списков, результаты работы генераторов или функций, возвращающих кортежи или списки.
Также при помощи распаковки можно передавать числовые параметры из стандартного ввода в функцию в одну строчку:

Python
1
2
3
def max(a, b, c):
    return max(max(a, b), c)
print(max(*map(int, input().split())))

2:

join — очень полезная функция. Она принимает массив и складывает все строки из него в одну большую строку, и разделителем между элементами является сама строка, из которой вызвали функцию.
Python
1
2
3
sep = ", "
arr = ["Саша", "Женя", "Петя", "Вася"]
sep.join(arr)
PHP/HTML
1
'Саша, Женя, Петя, Вася'
Python
1
";".join( ["1","2"] )
PHP/HTML
1
'1;2'
2
Эксперт NIX
2795 / 2038 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
22.03.2016, 17:22 14
Цитата Сообщение от Avazart Посмотреть сообщение
Python
1
2
3
4
5
6
7
8
9
l = [1, 4, 5, 4, 1, 6, 4, 6, 4, 4, 7]
* * l.sort()
* * n = 0
* * for i in range(1, len(l)):
* * * * if l[i] == l[n]:
* * * * * * if i - n == 1:
* * * * * * * * print(l[i])
* * * * else:
* * * * * * n = i
Изначально идея была верная, только исполнение немного подкачало.
Python
3
4
5
6
7
8
9
for i in range(1, len(l) - 1):
    if l[i-1] == l[i] and l[i] != l[i+1]:
        print(l[i], end=" ")
if l[i+1] == l[i]:
    print(l[i])
else:
    print()
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
22.03.2016, 18:01 15
Цитата Сообщение от Marinero Посмотреть сообщение
только исполнение немного подкачало.
В чем?
0
Эксперт NIX
2795 / 2038 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
22.03.2016, 20:23 16
Avazart, лишняя переменная n. Хотя в целом интересная реализация, беру свои слова обратно.
0
0 / 0 / 0
Регистрация: 23.08.2017
Сообщений: 2
28.03.2018, 20:49 17
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
lst = list(input())
x = 0
l = []
for i in lst:
    if lst.count(i) !=1:
        l.append(i)
 
l2 = set(l)
l2= list(l2)
l2.remove(' ')
while x != len(l2):
    print(l2[x],endl=" ")
    x +=1
print()
endl=" " указывает функции print что вместо переноса строки мы вставляем символ пробела.
0
Эксперт по компьютерным сетям
5901 / 3358 / 1036
Регистрация: 03.11.2009
Сообщений: 10,009
28.03.2018, 21:00 18
Цитата Сообщение от artek06 Посмотреть сообщение
endl

Не по теме:

сишник детектед

0
Avazart
28.03.2018, 21:04
  #19

Не по теме:

Цитата Сообщение от Jabbson Посмотреть сообщение
сишник детектед
Человек который не может отличить Си от С++ детектед )))

0
Эксперт по компьютерным сетям
5901 / 3358 / 1036
Регистрация: 03.11.2009
Сообщений: 10,009
28.03.2018, 21:21 20
Цитата Сообщение от Avazart Посмотреть сообщение
Человек который не может отличить Си от С++ детектед )))

Не по теме:

Вы прекрасно поняли, что имелось ввиду, но очень надо было что-то сказать? Как это должно было быть названо? Сиплюсплюсшник? Сипипишник? Си-based language, c superset - значит сишник. Я не специалист ни в коем случае, боже упаси, но отличаю, спасибо за беспокойство :D

0
28.03.2018, 21:21
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.03.2018, 21:21
Помогаю со студенческими работами здесь

При нажатии кнопки выводить результат в строку
Написала программу русско-английского переводчика, все слова хранятся в отдельном файле. Прописала...

Дописать функцию, которая будет выводить объекты в одну строку
Здравствуйте! Есть две функции: DocBeforeFill() - функция до создания отчета. Здесь заполняются...

При выборе значения в ComboBox выводить только одну выбранную строку в DataGridView
Нужно при выборе значения в combobox выводило только одну выбранную строчу в datagridview. Думал...

есть текст программы, но не хочет выводить результат, что не так?
вот текст програмы которая должна строить гаф, но она не выводит результат!program Tree; uses crt;...

Вывести результат нескольких вызовов пользовательской функции в одну строку
Есть функция вроде void out(int k, int n) { for (int i = 0; i != n; i++) cout << k << " ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее: На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru