Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Python

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

Открыть новую тему     Написать ответ в эту тему

Adm10



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здесь обсуждается всё, что связано с использованием Python: программирование, библиотеки, ресурсы и другие вопросы

Python


Python - высокоуровневый язык программирования общего назначения с динамической типизацией и автоматическим управлением памятью, ориентированный на повышение производительности разработчика, читаемости кода и его качества, а также на обеспечение переносимости написанных на нём программ

С чего начать?
Простой, понятный и вместе с тем грамотный ресурс на русском языке: pythonworld.ru + самоучитель
Библия PEP8

Всего записей: 35 | Зарегистр. 13-10-2006 | Отправлено: 15:48 16-06-2007 | Исправлено: useretail, 21:51 22-06-2024
AnTul

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
всё что связано с использованием Python: программирование, библиотеки, ресурсы и другие вопросы

- прочёл вот это и поэтому здесь и спросил. Спасибо за ответ.

----------
Василий Великий: «Кто смотрит на зло без отвращения, тот скоро будет смотреть на него с удовольствием».

Всего записей: 5630 | Зарегистр. 13-07-2004 | Отправлено: 21:58 15-12-2020
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем доброго времени суток.
 
Никто не выручит по вопросу "кривой" работы скрипта? Там что-то с библиотекой Curses, а если чуть поточнее, то там есть строчка  stdscr = _curses.initscr() , которая должна возвращать объект, а возвращает ноль. Ну и выдается сообщение, что Redirection is not supported. И я не могу сообразить, что делать дальше: толи версию библиотеки нужно поменять или может что-то, где-то подправить? Если  откликнется какой-нибудь добрый человек, то я разумеется дам ссылку на Питон-код и постараюсь тоже быть чем-то полезен. Заранее спасибо.

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 22:59 24-01-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd

Цитата:
Ну и выдается сообщение, что Redirection is not supported

вы где и как запускаете скрипт?
https://stackoverflow.com/questions/16740385/python-curses-redirection-is-not-supported

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 23:09 24-01-2021
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Спасибо, что не прошли мимо моего горя =)).

Цитата:
вы где и как запускаете скрипт?

Через BAT-файл и пытался отладить в Wing IDE - и там, и там потерпел фиаско ))  
Сейчас хочу почитать материал по вашей ссылке.  
 

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 23:50 24-01-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd

Цитата:
Через BAT-файл

как? у меня все работает.  
можете протестировать (без initscr, но и добавление его не выдает ошибки)
ошибка говорит о том, что нет терминального окна или его эмуляции.
ну или выкладывайте код, или хотя бы проблемную часть.

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 00:17 25-01-2021 | Исправлено: Mavrikii, 00:27 25-01-2021
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
можете протестировать (без initscr, но и добавление его не выдает ошибки)  

Ваш код у меня тоже выдает ошибку.
 
    def draw_menu(stdscr)
                                    ^
SyntaxError: invalid syntax  
 
Прям, мистика какая-то. У меня, если что, прописан в PATH (python 2.7.18 32bit) до этого ставил и (python 2.7.18 64bit), и  python 3 - бесполезно. Оставил, пока, 2.7.17 32bit.  
 
Код, который я не могу запустить написан под ver. 2.7  Запускать ( runpe.py  --file  sample_x64.EXE )  sample_x64.EXE  -- любой exe-файл. Извиняюсь, если что, за излишние подробности. И, по-моему, он вам может в перспективе, когда-нибудь пригодиться =)) Ну кому-нибудь, кто будет читать этот тред - он точно не помешает. ))
 
https://dropmefiles.com/xtdG4

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 01:33 25-01-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd

Цитата:
def draw_menu(stdscr)
                                    ^
SyntaxError: invalid synta

двоеточие потеряли.
 

Цитата:
Код, который я не могу запустить

у меня ошибка возникает в другом месте, так что проблема не в упомянутой функции.
 

Цитата:
Traceback (most recent call last):
  File "runpe.py", line 464, in <module>
    main()
  File "runpe.py", line 459, in main
    curses.wrapper(start)
  File "\path\lib\curses\__init__.py", line 105, in wrapper
    return func(stdscr, *args, **kwds)
  File "runpe.py", line 418, in start
    stk_win = curses.newwin(60, 160, 10, 140)
_curses.error: curses function returned NULL

 
и в .bat сделайте  
python runpe.py -- file file.exe
иначе у вас интерпретатор может запуститься иначе, не в том же консольном окне.

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 02:07 25-01-2021 | Исправлено: Mavrikii, 02:09 25-01-2021
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
у меня ошибка возникает в другом месте, так что проблема не в упомянутой функции.

Я через BAT-файл когда запускаю, то такая же как у вас ошибка, а до этого я писал про ошибку, которую Wing IDE выдавала под отладчиком.  
 
После того, как я восстановил в вашем коде кучу кавычек, слешей..., которые видимо, скрипт сайта не дает скопировать, он так и не запустился:
 

Цитата:
Traceback (most recent call last):
  File "C:\8_5_CODE_PROJECT\_x86-64---PE-emulator__(Unicorn--Python)\test_dmaamd.py", line 92, in <module>
    main()
  File "C:\8_5_CODE_PROJECT\_x86-64---PE-emulator__(Unicorn--Python)\test_dmaamd.py", line 89, in main
    curses.wrapper(draw_menu)
  File "C:\Python2718\lib\curses\wrapper.py", line 43, in wrapper
    return func(stdscr, *args, **kwds)
  File "C:\8_5_CODE_PROJECT\_x86-64---PE-emulator__(Unicorn--Python)\test_dmaamd.py", line 45, in draw_menu
    statusbarstr = "Press 'q' to exit  STATUS BAR  Pos {}", {}.format(cursor_x, cursor_y)
AttributeError: 'dict' object has no attribute 'format'

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 03:22 25-01-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd

Цитата:
которую Wing IDE выдавала под отладчиком

потому что там нет терминального окна.
запускать нужно так, чтобы было окно или его эмуляция.
 

Цитата:
AttributeError: 'dict' object has no attribute 'format'

с кавычками намудрили
 

Цитата:
которые видимо, скрипт сайта не дает скопировать

не знаю какие у вас проблемы, все нормально копируется с форума.
да и он просто для примера работы с терминальным окном был.

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 03:33 25-01-2021 | Исправлено: Mavrikii, 03:34 25-01-2021
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
не знаю какие у вас проблемы, все нормально копируется с форума.

Да, вы правы, действительно, все нормально копируется - просто нужно правильно копировать, ну новичкам, поди, простительно?)) Ваш код заработал, но он оказывается у меня есть и был. Я его с гитхаба скачивал. Знал бы, не мучился. )) Просто, что-то понравилась мне эта библиотека Curses - вот я и собираю в сети примеры, которые попадутся.
А вот почему второй код с Curses не запускается - это, прям, какая-то непостижимая тайна и загадка? ))    
 
 

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 09:02 25-01-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd

Цитата:
какая-то непостижимая тайна и загадка?

ну это же вам интересно поковыряться.
 

Цитата:
curses.newwin(60, 160, 10, 140)

предыдущие вызовы отработали без проблем.
скорее всего связано с тем, что размеры или координаты выходят за пределы окна.
 
наверняка там еще будет что то не так (зависит от версии питона).

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 09:08 25-01-2021
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
ну это же вам интересно поковыряться.

Да я не против, только толку-то? Если бы у меня еще и уровень знаний по Питону как у вас был. И то, если я вас правильно понял, быстро с этим не разберешся - нужно время, а у вас его, видимо, не так много.

Цитата:
скорее всего связано с тем, что размеры или координаты выходят за пределы окна.

А Curses нельзя заменить чем-нибудь другим или вообще, допустим, отключить? Чтобы в обычном черно-белом варианте консоли хотя бы заработало?  

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 09:28 25-01-2021 | Исправлено: dmaamd, 09:35 25-01-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmaamd

Цитата:
Что бы в обычном черно-белом варианте консоли хотя бы заработало?

curses нужен не столько для цвета, сколько для управления вывода текста в окно.
без него текст будет идти просто сверху вниз (да и все равно придется все переписывать).
 

Цитата:
Если бы у меня еще и уровень знаний по Питону как у вас был.

так изучайте, но с более простого.

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 09:30 25-01-2021 | Исправлено: Mavrikii, 09:31 25-01-2021
Steepe_Hare



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята, как у Питона с созданием неглючных Android-приложений? Кроме kivy и мутного buildozer-а ничего нет?

Всего записей: 1162 | Зарегистр. 27-10-2001 | Отправлено: 21:25 25-01-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Steepe_Hare

Цитата:
Кроме kivy и мутного buildozer-а ничего нет

https://medium.com/@umerfarooq_26378/tools-to-run-python-on-android-9060663972b4

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 00:08 26-01-2021
dmaamd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хвастаюсь =))
 
При помощи Питона, можно за короткое время написать вот такой вот, простенкий интерфейс к какому-нибудь Tools'у - уложившись в 10 -20 строчек кода:    
 

 
Пока отображается тестовая белиберда, но, как говориться, плох тот солдат, который не мечтает написать какую-нибудь неломаемую защиту или OS на Питоне. =))

Всего записей: 102 | Зарегистр. 22-01-2019 | Отправлено: 02:10 28-01-2021
presentRU

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В программировании чайник. Есть следующая задача. Запустить на Android SSH-сессию и передавать команду на выключение/гибtрнацию ПК, на котором установлена Windows и запущен SSH-сервер . Есть такая программа SSH button. Через неё без проблем получается это сделать. Просто указываю в настройках логин, пароль, порт и команду.
 
скрин
 
Но нужен именно скрипт в виде отдельно файла, который после выполнения задачи может быть удалён. Вроде с помощью python это можно реализовать. Рылся долго в интернете, удалось собрать такую конструкцию.
 

Код:
from paramiko import SSHClient, AutoAddPolicy
hostname='100.100.100.100'
username='user'
password='12345678'
cmd="%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState Hibernate"
client = SSHClient()
client.set_missing_host_key_policy(AutoAddPolicy())
client.connect(hostname, username=username, password=password)
client.exec_command(cmd)
print("Connected to %s" % hostname)

 
Подключение вроде происходит, но команда не выполняется. Может кто знает, что не так? Или чем ещё, кроме питона можно такое сделать?

Всего записей: 822 | Зарегистр. 16-10-2006 | Отправлено: 14:09 17-02-2021
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
presentRU

Цитата:
Подключение вроде происходит, но команда не выполняется.

логи ssh сервера смотрели? есть ли подключение, отсылается ли какая то команда?

Всего записей: 15582 | Зарегистр. 20-09-2014 | Отправлено: 20:08 17-02-2021
presentRU

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
логи ssh сервера смотрели? есть ли подключение, отсылается ли какая то команда

Спасибо, посмотрел. Передача команды зафиксирована. Но на профильном форуме по питону подсказали, что строчка
Код:
cmd="%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState Hibernate"

должна выглядеть как

Код:
cmd=r"%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState Hibernate"

 

Всего записей: 822 | Зарегистр. 16-10-2006 | Отправлено: 23:59 17-02-2021
Ivanovi4

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
При помощи Питона, можно за короткое время написать вот такой вот, простенкий интерфейс к какому-нибудь Tools'у - уложившись в 10 -20 строчек кода:    

еще можно PyQT5 рассмотреть! Очень годная вещь!
https://pypi.org/project/PyQt5/

Всего записей: 28 | Зарегистр. 26-02-2021 | Отправлено: 16:59 26-02-2021 | Исправлено: Ivanovi4, 10:21 27-02-2021
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Python


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru