|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
||||||
Добавление нескольких файлов для последующего редактирования03.09.2019, 12:20. Показов 15824. Ответов 158
Метки python 3.x (Все метки)
Доброго времени суток форумчане! Не так давно, благодаря знатокам из данного форума была написана (спасибо за всё) программа. Суть её в следующем: На диске лежат файлики в которых 20 строк, каждую десятую строку программа вставляет пустую строку, затем копирует содержимое 10-й строки, добавляет перед пустой строкой (проще говоря дублирует 10-ю строку), затем дублирует 11-ю и добавляет перед 11-й строкой (капец туфтология), наглядно это вот так:
Было: 7 8 9 10 11 12 13 Стало: 7 8 9 10 10 11 11 12 13 И так программка делает каждую 10-ю строку! Строк может быть уйма. Всё работает всё делится, как надо, вопрос таков: Файлов которые нужно редактировать много, поэтому, я хотелось бы сделать, что-то типа добавления или запоминания нескольких файлов, а затем их сразу переделывать, что каждый раз не указывать файл заново. Файлы лежат в разных папках, поэтому забирать из корня не выйдет. Желательно сделать наглядно, чтобы я уже видел, какие файлики я добавил, а какие нет! Заранее спасибо за помощь! Собственно и сама программа:
0
|
||||||
| 03.09.2019, 12:20 | |
|
Ответы с готовыми решениями:
158
Сохранить данные из них для последующего просмотра и редактирования Как целиком загрузить таблицу из SQL БД в браузер для последующего её редактирования? Добавление картинки через диалоговое окно по кнопке, для последующего сохранения в таблицу |
|
|
||
| 05.09.2019, 09:24 | ||
|
Глобалки - прямой путь в говнокод, поэтому из многих языков их убрали. Так что Питон тут не показатель.
1
|
||
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 05.09.2019, 10:28 [ТС] | |
|
Viktorrus Кхм, я сейчас немного офигел из-за количества написанного Вами. Я всё ещё раз прочитаю и расскажу Вам (и всем, кто "в теме") о задаче. Так же расскажу, почему там лейбл не обновляется и т.д. Раз уж я не могу правильно её сформулировать значит и написать правильно не смогу, значит надо, как следует со всем разобраться. Чуть попозже отвечу полностью.
0
|
|
| 05.09.2019, 12:31 | |
|
Damenikx, Вот ссылка, которую я обещал.
https://metanit.com/python/tutorial/9.3.php Здесь расказывается, как менять тексты в виджетах, когда форма уже открыта. Я в своем коде использовал метод config(), очень удобный. Позволяет в уже открытой форме менять любые параметры виджета. Добавлено через 5 минут С помощью этого метода, я не только меняю текст в метке, но и открываю и закрываю для записи служебные виджеты Entry, которые предназначены для записи в них служебной информации, показываемой пользователю, но не доступные ему для редактирования.
0
|
|
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 05.09.2019, 14:13 [ТС] | |
|
Viktorrus, хорошая статья, добавлю в закладки.
0
|
|
| 05.09.2019, 20:37 | |||||||
Сообщение было отмечено Damenikx как решение
Решение Бедные разработчики питона, которые ввели глобальные переменные, которые использовать нельзя, и бедный Лутц, который пишет "говнокоды". Они не могут осознать Ваших гениальных идей, потому, что с Вами не знакомы. А может дадите ссылку на Ваши изданные труды, в которых излагаются Ваши "гениальные" идеи? У заклейменного Вами Лутца, который считает использование глобальных переменных нормой, уже 5 раз переиздаются его книги, являющиеся объемными трудами и признанными классикой.Опять я с Вами схлестнулся. Но в длительную полемику вступать не намерен. Стараюсь не обращать на Ваши комментарии внимания, но бывает на некоторые дикости срываюсь. На этом все, разрешите откланяться. ![]() Добавлено через 1 час 0 минут Damenikx, Вот я переписал Ваш код, с функцией создания формы, и запуском из блока if __name__ == '__main__': Кликните здесь для просмотра всего текста
Работает так же, как Ваш код. Теперь его можно дорабатывать, размещая внизу формы нужные Вам сообщения. Только четко определите алгоритм, что должно писаться внизу формы. Добавлено через 3 минуты На самом деле внизу формы , после размещения кода создания формы в функции, выводит не совсем так как у Вас. Но теперь без проблем можно выводить внизу сообщения по любому, как только Вы захотите. Только скажите, как Вы хотите.
1
|
|||||||
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 06.09.2019, 08:01 [ТС] | |
|
Viktorrus, спасибо Вам огромное, сейчас всё переделаю!
Добавлено через 54 секунды У меня теперь каша в голове, получается использовать глобальные переменные всё-таки можно)))
0
|
|
|
Автоматизируй это!
|
||
| 06.09.2019, 09:28 | ||
|
Глобал в пайтон и статик в джаве (мой второй язык) это очевидные и простые для новичка вещи, поэтому все новички и всегда за него хватаются и порой проблем то и не видят. Пока программа простая и короткая все может прекрасно работать, но когда она начнет расти да еще и многопоточность добавится, тут то и начинаешь понимать почему в обоих языках учат обходиться без них. Но это только если ты планируешь расти в программировании. Если нет, то конечно используй глобал, пиши клоуз после менеджера контекста (как в коде выше), бабахай методы по 100 строк - все равно никто кроме тебя не пострадает.
1
|
||
|
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
|
||||||
| 06.09.2019, 09:51 | ||||||
|
Viktorrus, а почему не засунуть все в класс? => избавиться от global.
Кликните здесь для просмотра всего текста
1
|
||||||
|
|
|||||
| 06.09.2019, 10:47 | |||||
|
Разработчики Питона, если что, не "ввели" глобальные переменные, точнее, ввели не их. Сама структура языка такова, что выпилить их невозможно. Будьте любезны, приведите пример, где у Лутца описывается, что использования глобалок - это норма. Вот правда, мне интересно. Иначе всё, что вы написали - это просто дурь. Примеры элементарного кода на 10 строк - не в счёт. Добавлено через 2 минуты Кстати, если интересно - в нашей компании я сейчас сам провожу собеседования по Питону, и один из моих "общефилософских" вопросов - "что плохого в глобальных переменных". Если человек не ответит - большой минус, значит, у него вообще нет практики. Но почти всегда отвечают. Добавлено через 2 минуты Добавлено через 9 минут Viktorrus, раз уж вы такой умный, разбираетесь в глобалках, мне интересно, понимаете ли вы, (не гугля,) разницу между global variable и global value? А между глобальной переменной и синглтоном?
2
|
|||||
|
Автоматизируй это!
|
||
| 06.09.2019, 10:50 | ||
|
dondublon, проблема в его отношении к Лутцу, у него в руках букварь, а он думат, что Библия (если позволите такую метафору).
Лутц -мастер, он довольно хорошо рассказывает о всех средствах языка, чтобы дать о них представление и естественно он использует простейшие примеры, где глобал реально самый простой подход. Это нужно понимать. И читать что-то кроме Лутца. Или внимательно читать его: Viktorrus,
Не по теме: dondublon, чисто из интереса, на собесе просите какой-то код написать? Листкомпс например или по ООП?
2
|
||
|
|
||
| 06.09.2019, 10:57 | ||
|
Ну ясно дело, не может быть у Лутца оправдания использованию глобалок. По поводу кода. Именно кода прошу писать мало. Первым делом прошу написать рекурсивный факториал. (Признаюсь, это была не моя идея, но одобряю.) Казалось бы, простая задача, но на удивление много народа отсеивается сразу. Затем - найти ошибку в антипаттерне с итератором, когда iterable в качестве итератора возвращает self. (Это уже моя придумка.) Знаете, люди любят такое писать "на скорую руку". Вроде бы тоже несложно, но и тут часто у народа нет понимания итераторов и ответить они не могут. Могу и ещё накидать, у меня список есть но там больше просто вопросы. Про ООП я очень хотел бы спрашивать, но, каюсь, не знаю, как именно проверить эти знания. Человек может оттарабанить паттерны, прочитанные в книжке, и не видеть их в реальном коде. В итоге по мелочи спрашиваю, конечно, но меня самого не очень устраивает
1
|
||
|
Автоматизируй это!
|
|||
| 06.09.2019, 11:22 | |||
|
Не по теме:
Добавлено через 2 минуты с факториалом норм написал сходу в виде лямбды, а наверное функцией надо было)
1
|
|||
|
|
|
| 06.09.2019, 11:49 | |
|
Welemir1, мне стыдно, я и не знал, что так можно.
Не, так прокатит, конечно, но вообще всегда пишут функцию. Добавлено через 32 секунды Welemir1, не, погоди, щас я разберусь. Как-то странно выглядит, тут должна быть проблема. Добавлено через 1 минуту Не, работает. Но выглядит всё равно необычно.
1
|
|
|
Автоматизируй это!
|
||
| 06.09.2019, 11:49 | ||
|
dondublon, ну проблема есть, кеширование к функции можно прикрутить например,а тут память будет кушать, но зато писать быстро
Добавлено через 19 секунд
1
|
||
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 06.09.2019, 14:26 [ТС] | |
|
Вай Вай Вай, друзья. Монстры питона(без сарказма), вы чего устроили?)) я же теперь помру, лямбды, рекурсии, факториалы обратные, вы чего)) я тут простейшую функцию написать не могу, а тут такое)) вы главное не ссоритесь, ведь приятнее общаться, всегда, когда царит доброта и шипит пиво!)
За вас и за спецназ (питоновский)
1
|
|
| 06.09.2019, 14:37 | |
|
0
|
|
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 06.09.2019, 14:43 [ТС] | |
|
Welemir1,
Не по теме: я же вроде и со сложного не начинал, это простейшая програмка, совсем. Захотел подключить гуй, дабы упростить себе задачу, а вышло наоборот))
0
|
|
| 06.09.2019, 14:43 | |
|
Помогаю со студенческими работами здесь
80
Поиск и перемещение файлов в папку для их последующего удаления Добавление нескольких файлов в БД Добавление нескольких файлов в бд
Добавление нескольких файлов в OpenFileDialog Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|