OpenFile

Автор Ципихович Эндрю, 2 января 2024, 21:38

0 Пользователи и 1 гость просматривают эту тему.

Ципихович Эндрю

Цитата: Ципихович Эндрю от 10 января 2024, 09:09я хотя-бы получил опыт кодинга на Питоне для либры, этот кодинг также как кодинг на Питоне для Блокнота++ они оба специфические...
но в либре кодинг получше будет - эф строки работают и другие плюшки есть в отличие от Блокнота++ - большой респект))

Ципихович Эндрю

после исправления скрипта сейчас вставились документы полностью, спасибо
только в макросе я менял Chr(160) на пробел замен было 144 шт.
думал, что в скрипте Питона нужно менять    на пробел
но в сообщении по окончании работы скрипта сказано, что выполнено замен: 0
и действительно они в файле остались в количестве 144 шт. их скрин прилагаю, как из заменить скриптом Питона?

mikekaganski

Вот, специально для Вас нагуглил функцию chr.
С уважением,
Михаил Каганский

Ципихович Эндрю

#78
нужно было писать с маленькой буквы chr(160), спасибо и вуалаля
+++++++++++++++++++++++++++++++++++++++++++++
Начато: 2024-01-10 12:33:25.527330
Окончено: 2024-01-10 12:41:12.017161
Продолжительность работы программы: 0:07:46.489831
Вставлено документов в текущий документ: 30
Количество сделанных замен chr(160) на пробел: 144
ну немного быстрей макроса на Бейсике - не критично))
ну и как говорится аппетит приходит во время еды
как сохранить документ как текстовый файл с расширением txt, с кодировкой утф-8 по нужному пути?

Ципихович Эндрю

подскажите я так и не понял в листинге def должен быть один?
я про то, чтобы сделать поизящнее, заменить сообщение в документе
Цитата: Ципихович Эндрю от 10 января 2024, 10:58Начато: 2024-01-10 12:33:25.527330
Окончено: 2024-01-10 12:41:12.017161
Продолжительность работы программы: 0:07:46.489831
Вставлено документов в текущий документ: 30
Количество сделанных замен chr(160) на пробел: 144
на
from tkinter import *
 
 
def MsgBoxOk(title, txt_sms):
    def click_button():
если возможен НЕ один def, тогда, что его смещать на один отступ вправо?

Ципихович Эндрю

Цитата: Ципихович Эндрю от 11 января 2024, 09:54если возможен НЕ один def, тогда, что его смещать на один отступ вправо?
я смещал, тогда код ругался на строку
from tkinter import *

Ципихович Эндрю

видимо на tkinter табу, в рабочем коде, обе строки:
from tkinter import *
import tkinter as tk
не пропускает.......

Ципихович Эндрю

и на остальные GUI тоже ошибки появляются не пускают выполнять скрипт

import PySimpleGUI as sg

import sys
from PyQt5.QtWidgets import QApplication, QWidget

economist

C TKinter облом (выпилен) и засады с именем. Qt5 непатриотично и оч. сложно.

Есть много простых способов сделать GUI к скрипту, включая результат в консоли, в браузере и в нарисованных окнах.

Также можно впилить TKinter и Qt силой, как написал тут https://forumooo.ru/index.php?topic=8696.0

Вы очень мало пишете про свою конечную цель, но хотите грамотных советов сразу, приходится гадать.
Вангую что вам нужен pyautogui, под LO он ставится через pip (см. ссылку)   
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

Ципихович Эндрю

спасибо за ответ
Цитата: economist от 11 января 2024, 12:31Вангую что вам нужен pyautogui
Pyautogui — что это? Это библиотека, которая позволяет эмулировать действия пользователя как с клавиатурой (нажатия клавиш, ввод текста, горячие клавиши), так и с мышкой (правая/левая кнопка, нажатие, перенос). Работает это диво везде, где работает Python — а значит код, написанный в одном месте, будет работать в другом
нет, мне нужен MsgBox

economist

Цитата: Ципихович Эндрю от 11 января 2024, 12:48мне нужен MsgBox

Он, конечно же, там есть. Как и многое другое, что понадобится впредь. 
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

Ципихович Эндрю

Цитата: economist от 11 января 2024, 12:57Он, конечно же, там есть. Как и многое другое, что понадобится впредь
мы же про питон либры говорим? мне он нужен
я видел
msgbox(message, title='Message', boxtype='message', buttons=1, win=None)
но это как я понимаю для APSO?
во всяком случае я не понял как его применить?

economist

Буду закругляться, поэтому тезисно:

1) в LO-Python (который в LibreOffice\program\python,exe) добавляем pip см. #83
2) ставим любые либы pip install либа какие хотим. Что не ставится - копируем как в #83
3) используем либы, но не все, а те что проще. Сложные либы не взлетят под LO-Python никак, например torch.   
4) APSO - это диалог вызова и отладки Py-скриптов для LO-Python, не более. К либам он не имеет никакого отношения.

И вот тут самое главное: как уже не раз говорилось - LO сложен, его BASIC сложен, да и Python тоже сложен. Нужно брать простое, по принципу KISS ("будь проще"). Т.е. для вывода msgbox не нужен Qt5 размером 50 МБ. Даже стандартный msgbox в Basic можно "накрасить". Все msgbox из Basic - на LO-python уже продублированы (см. оф. доку). TKinter зашкварен (удален) и убог внешне. pyautogui - тоже, но без него почти никто не может обойтись, уж больно полезен.

Если нужен полноценный красивый GUI с диалогами для визардов - то с Python есть куча вариантов (десятки), и все рабочие. Некоторые вообще сразу делают GUI на web-технологиях Python это мало того что красиво (там на самом деле вовсю используется JavaScript и его "дети"), так еще и заработает это везде и на всем, через браузер.

Если лень - рисуем диалог прямо в ODT/ODS на Форме или в ячейках ODS и Проверка-Данные и Усл. форматирование (не фирмово выглядит, зато быстро и можно заставить юзеров хоть чем-то помочь).

Путей масса. И только если что-то постоянно недоговаривать - путь будет самым долгим, т.к. будут постоянные недо-ответы.
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

Ципихович Эндрю

Цитата: economist от 11 января 2024, 14:49Все msgbox из Basic - на LO-python уже продублированы (см. оф. доку)
можно пожалуйста ссылку на ресурс? спасибо

sokol92

Владимир.