|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
||||||
Добавление нескольких файлов для последующего редактирования03.09.2019, 12:20. Показов 16318. Ответов 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 БД в браузер для последующего её редактирования? Добавление картинки через диалоговое окно по кнопке, для последующего сохранения в таблицу |
|
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,249
|
|
| 04.09.2019, 15:58 | |
|
Welemir1, он хочет переиспользовать переменную за пределами локальной области видимости)
1
|
|
|
Автоматизируй это!
|
||||||||
| 04.09.2019, 16:00 | ||||||||
Добавлено через 42 секунды
1
|
||||||||
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
||
| 04.09.2019, 16:01 [ТС] | ||
|
0
|
||
|
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,249
|
|
| 04.09.2019, 16:01 | |
|
1
|
|
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
||
| 04.09.2019, 16:03 [ТС] | ||
|
Добавлено через 1 минуту Неужели я настолько туп, что не понимаю. Может я плохо показал, что на деле нужно.
0
|
||
|
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,249
|
|
| 04.09.2019, 16:05 | |
|
Damenikx, вы немного зациклились на своих способах решения проблемы. Вам бы отвлечься чем, потом перечитать всё то, что вам умные ребята, не чета мне, посоветовали.
1
|
|
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
||||||
| 04.09.2019, 16:07 [ТС] | ||||||
|
Вот:
Добавлено через 1 минуту Alli_Lupin, да, я вчера так делал, отвлёкся, перечитал. Всё равно не понимаю
0
|
||||||
|
Автоматизируй это!
|
|||||||
| 04.09.2019, 16:10 | |||||||
0
|
|||||||
|
|
|||||||||||
| 04.09.2019, 16:17 | |||||||||||
Сообщение было отмечено Damenikx как решение
Решение
Damenikx, уже даже жалко становится, вы так стараетесь.
Окей, тут 2 варианта. В первом в функцию change_file надо передать takeFile как параметр. 1 вариант - всё делаем по одному нажанию, в одной функции. Внутри её получам файл и меняем:
(Назовём его Storage)
0
|
|||||||||||
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 04.09.2019, 16:19 [ТС] | |
|
dondublon, Welemir1. Спасибо за помощь, сейчас буду разбираться.
0
|
|
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
||
| 04.09.2019, 16:25 [ТС] | ||
|
Welemir1, если использовать данный метод то есть проблема, при запуске программы мы сначала должны выбрать файлы для обработки. А если понадобиться ещё? Значит перезагружать программу? Добавлено через 1 минуту Скорее всего, мне надо будет переделывать всё. За основу возьму Ваши советы. Проблема в том, что главный то вопрос не решён видимо это действительно не правильно делать на 2 кнопки.
0
|
||
|
|
|
| 04.09.2019, 16:28 | |
|
Damenikx, вот поэтому в Qt, к примеру, принято в делать наследника от графического компонента (виджета). В наследнике делается логика, в т. ч. нужные переменные. Они не глобальные, они внутри класса.
1
|
|
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 04.09.2019, 16:31 [ТС] | |
|
dondublon, возможно надо использовать классы тогда, а не отдельные функции вне класса?
0
|
|
|
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
|
|
| 04.09.2019, 17:01 [ТС] | |
|
dondublon, это просто мысли в слух. Сижу, разбираюсь. Спасибо Вам.
0
|
|
| 05.09.2019, 02:23 | |||||||||
![]() Добавлено через 20 минут В общем еще раз внимательно продумайте алгоритм и для начала четко опишите свою задачу в теме на этом форуме. Добавлено через 1 час 5 минут Damenikx, Начал помаленьку разбираться с Вашей задачей. Буду давать свои замечания по ходу. Взял за основу Ваш код с глобальной переменной. Для начала, название кнопки "Открыть файл" не соответствует тому, что она делает. У Вас происходит не открытие файла, а открытие окна проводника и выбор в нем файла. Поэтому правильнее было бы назвать кнопку "Выбрать файл". Добавлено через 39 минут Обработка файлов идет нормально. У Вас проблема с записью внизу сообщений, какие файлы выбраны и какие обработаны. По этой же причине кнопка "Обновить список" не работает. Добавлено через 20 минут Существуют способы изменять метки в уже выведенной форме, Вы просто этого не знаете. И еще, по моему для того, что бы правильно работала форма, нужно структуру ее создания помещать в функцию. По крайней мере Лутц так делает, и я используя его примеры, тоже так делаю. Кликните здесь для просмотра всего текста
Я по аналогии с Лутцом называю функцию, в которой конструируется форма, именем makeWidgets() Поэтому первое, что я Вам рекомендую сделать, это разместить код создания формы в функцию. Что касается изменение меток Label в уже открытой форме, то я завтра найду , где описаны приемы, как это делается, и дам Вам ссылку.
1
|
|||||||||
| 05.09.2019, 03:43 | ||||||
|
Damenikx, Вот еще один проект (точнее одна его часть, так как он из двух модулей), где кстати я при работе с выведенной формой меняю текст метки lab1 с помощью метода config(), следующим образом lab1.config(text=activCh)
Кликните здесь для просмотра всего текста
Добавлено через 3 минуты Если запустите этот код, то увидите как он работает. При выборе некоторой буквы, в левом верхнем углу меняется запись, показывающая какая буква сейчас выбрана. Аналогичный прием нужно использовать и Вам, что бы менять записи внизу формы. Но не забудте поместить описание формы в функцию. Добавлено через 44 минуты Damenikx, А вообще то, так как Вы говорите, что у Вас большое количество файлов, то выводить информацию внизу формы бессмысленно. Нужно менять алгоритм решения задачи. Например помещать информацию, какие файлы обработаны, в базу данных. И при выборе файла проверять , сличая с БД, что файл не обрабатывался. Так как при повторной обработке в нем будет нарушена его структура. Или еще лучше, после обработки файла менять его название, добавляя в конец названия специальную метку, что файл обработан. В общем еще раз как следует продумайте алгоритм вашей работы с файлами, на всех этапах этой работы. Добавлено через 15 минут Хотя, если Вы просматриваете файлы последовательно, и просто отвлеклись и забыли какой последний файл обработали, то Ваш алгоритм вполне подойдет. Но если повреждение файла это серьезная проблема, то я бы еще добавил сохранение информации об обработанных файлах в базе данных или изменение имени, как я говорил выше. Но это уже смотрите сами, на сколько это необходимо.
1
|
||||||
| 05.09.2019, 03:43 | |
|
Помогаю со студенческими работами здесь
60
Поиск и перемещение файлов в папку для их последующего удаления Добавление нескольких файлов в БД Добавление нескольких файлов в бд
Добавление нескольких файлов в OpenFileDialog Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
|
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
|