Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2018, 19:50   #1
Vlad-Belarus
Пользователь
 
Регистрация: 25.12.2017
Сообщений: 15
По умолчанию обобщающий вопрос

Можно ли с помощью одной программы выводить разную информацию на две другие консоли (то есть при запуске программы открывались 2 окна в которые выводились все содержимое print('') и т.п. инструкций). Если да, то как? В интернете искал не чего толкового не нашел.
Vlad-Belarus вне форума Ответить с цитированием
Старый 10.04.2018, 20:29   #2
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Скажите для чего это надо? цель какая?
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 10.04.2018, 21:12   #3
Vlad-Belarus
Пользователь
 
Регистрация: 25.12.2017
Сообщений: 15
По умолчанию

пишу я программу для нахождения совершенных чисел (Совершенное число — натуральное число, равное сумме всех своих собственных делителей (то есть всех положительных делителей, отличных от самого́ числа). По мере того как натуральные числа возрастают, совершенные числа встречаются всё реже. Неизвестно, бесконечно ли множество всех совершенных чисел.

Совершенные числа образуют последовательность[1]:

6,
28,
496,
8128,
33 550 336,
8 589 869 056,
137 438 691 328,
2 305 843 008 139 952 128,
2 658 455 991 569 831 744 654 692 615 953 842 176,
191 561 942 608 236 107 294 793 378 084 303 638 130 997 321 548 169 216, …)

ну и надо чтобы в одном окне выводились совершенные числа, а в другом не совершенные числа.

практикуюсь, ставлю задачи и пытаюсь их решать. Вот одна из этих задач.
Vlad-Belarus вне форума Ответить с цитированием
Старый 10.04.2018, 23:39   #4
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Почему не хотите одной строчкой выводить совершенное : не совершенное ? через какой нибудь разделитель.

Если уж прям хочется именно два окна, то можно что нибудь придумать, к примеру 1 скрипт занимается всеми вычислениями а так же делает print совершенного числа а не совершенно число отбрасывает по tcp сокету второму скрипту а тот его печатает.

Если уж сильно нужен вариант который Вы изложили можно еще подумать как это реализовать, пока на ум приходит сокет
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 11.04.2018, 17:14   #5
Vlad-Belarus
Пользователь
 
Регистрация: 25.12.2017
Сообщений: 15
По умолчанию

Просто самому стало интересно, можно ли это реализовать?
Я вот думал что можно просто если число СОВЕРШЕННОЕ, то его добавлять в список и потом этот весь список выводить, а под списком через какой нибудь разделитель выводить НЕ СОВЕРШЕННОЕ число и при каждом повторении цикла стирать все содержимое и выводить заново. Но всё же интересно можно ли это вообще реализовать в два окна?
Vlad-Belarus вне форума Ответить с цитированием
Старый 11.04.2018, 20:07   #6
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

В два окна можно реализовать например с помощью сокетов тут пример https://gist.github.com/Integralist/...15ed6db15809ae на работу не проверял но при желании можно погуглить. и другие примеры. можно и другие варианты поискать, но по мне и этот вполне нормальный
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 13.04.2018, 20:42   #7
Vlad-Belarus
Пользователь
 
Регистрация: 25.12.2017
Сообщений: 15
По умолчанию

Либо я что то не да понял, то ли программа не рабочая.
Vlad-Belarus вне форума Ответить с цитированием
Старый 13.04.2018, 21:55   #8
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Что конкретно Вы не поняли?

Есть сервер с айпи и портом к нему подключается клиент. (вот ваших два окна) со стороны сервера происходит все вычисления совершенное печатает в этом окне не совершенно отправляет по сокету клиенту тот получает и выводит с помощью принт. куда проще?
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 19.04.2018, 13:29   #9
nick-one
Пользователь
 
Регистрация: 28.03.2017
Сообщений: 35
По умолчанию

Думал, что можно разделить вывод на два окна с помощью Tkinter, не получается.
Код:
from tkinter import *
import time

def fu(*args):
    ct1='Нечетные: '
    ct2='Четные: '
    for x in range(10):
        if x%2:
            ct1+='%s, ' % x
            txt1.set(ct1)
        else:
            ct2+='%s, ' % x
            txt2.set(ct2)

root = Tk()
root.geometry('100x100+0+0')
root.title('главное окно')
btn = Button(root, text="Run", command=fu)
btn.pack(anchor=NW)

c1=Toplevel(root)
c1.title("консоль 1")
c1.geometry('300x100+150+0')
txt1=StringVar()
lbl1 = Label(c1, textvariable=txt1)
lbl1.pack(anchor=NW)

c2=Toplevel(root)
c2.title("консоль 2") 
c2.geometry('300x100+550+0')
txt2=StringVar()
lbl2 = Label(c2, textvariable=txt2)
lbl2.pack(anchor=NW)

root.mainloop()
Программа виснет до полного выполнения функции fu, при больших значениях(range(over 5000)) или при sleep. Как же выводить что-то постепенно, что требует вычислений?
nick-one вне форума Ответить с цитированием
Старый 19.04.2018, 14:16   #10
nick-one
Пользователь
 
Регистрация: 28.03.2017
Сообщений: 35
По умолчанию

Все ок, работает, нужно дописать пару строчек.
Код:
def fu(*args):
    ct1='Нечетные: '
    ct2='Четные: '
    for x in range(10):
        if x%2:
            ct1+='%s, ' % x
            txt1.set(ct1)
        else:
            ct2+='%s, ' % x
            txt2.set(ct2)
        time.sleep(1)
        root.update()
Еще если unix система, то эта задача решается еще проще и вывод будет реально в 2-х консолях.
nick-one вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Жизненный вопрос - Дано: я - самый умный. Вопрос: что делать? где это найти то, чего тебе не хватает? jura_k Свободное общение 16 10.03.2017 12:12
Вопрос по mySQL + Вопрос по RichEdit HTL Общие вопросы Delphi 4 01.01.2010 20:22
Вопрос laxe Общие вопросы C/C++ 4 22.09.2009 10:06
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
вопрос по сокетам и общение как в ICQ.Сложный вопрос... Руслантус Общие вопросы C/C++ 2 12.08.2008 21:10