![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
PyAlexey |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2006 Где: Россия, Нижний Но вгород Репутация: 6 Всего: 7 |
ser_gen, а ещё лучше — в Epytext Markup Language (epydoc).
А так, пока нет времени смотреть исходники. |
|||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
||||
|
||||
proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
Для полноты архива не хватает пробного xml-файла..... чтобы проверить работу программы. Добавлено @ 13:15
Вот выкладываю. Это сообщение отредактировал(а) proDiva - 27.9.2006, 15:03 |
|||
|
||||
PyS |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 149 Регистрация: 21.8.2006 Где: г. Алматы (Казахс тан) Репутация: нет Всего: 1 |
||||
|
||||
PyAlexey |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2006 Где: Россия, Нижний Но вгород Репутация: 6 Всего: 7 |
||||
|
||||
PyS |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 149 Регистрация: 21.8.2006 Где: г. Алматы (Казахс тан) Репутация: нет Всего: 1 |
||||
|
||||
PyAlexey |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2006 Где: Россия, Нижний Но вгород Репутация: 6 Всего: 7 |
proDiva
Короче, посмотрел я код. Как здесь уже говорили, лучше было бы использовать другой модуль для dbf. Также стоило использовать нормальный модуль для xml. Далее. Зачем везде писали путь для файлов? К тому же такие: ‘c:/XML_Editor/’. Надо было использовать переменные, а пути делать относительными. Честно говоря, мне не понятно, Вы первый раз пишите на Питоне или программу вообще? |
|||
|
||||
Vach |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 17.10.2003 Где: Санкт-Петербург Репутация: 4 Всего: 18 |
proDiva, какой у тебя wx стоит (или версия другая или я того...)? + при кодировки не cp1251 запустить не получается (мой случай)
|
|||
|
||||
proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
Первый раз на питоне а в замечаниях вы правы........ я говорила, что не уверена в рациональности насчет путей, исправлю....... просто я делала все по частям, а потом собрала в кучу....... и получилось, что везде прописаны пути)) (мне бывший коллега тоже все время говорил, не вбивать пути...... как видите, продолжаю) а с xml я работаю впервые и выбрала вариант, который смогла разобрать по частям. версия 2.6 |
|||
|
||||
J2A |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 171 Регистрация: 17.11.2005 Где: Омск Репутация: 16 Всего: 18 |
Для первого опыта вполне удачно.
1. Не нужно импортировать os.path, он доступен и при импорте просто os 2. Не рекомендуется делать "from foo import *", следует либо "from foo import Foo, Bar", либо "import foo". Почему: не знаешь точно какие переменные импортировала. Так кстати и быстрей. 3. По стилю все же рекомендуется классы называть с большой буквы, т.е. не "class foo", а "class Foo" 4. Переформатирования слишком сложны (класс dataload). Можно сделать гораздо проще. Например так: а) переформатирование даты '.'.join(reversed('2006-05-25'.split('-'))) (можно для увеличения читабельности разбить по переменным). б) переформатирования дробного "%.2f" % value в) выравнивание строки пробелами влево/вправо: mystr.ljust(n), аналогично и .rjust г) ну и я бы не оформлял как класс (никакого преимущества нет, т.к. не использует ни один атрибут), а оформил как функции. С учетом вышеперечисленных примеров, выделять в функцию стоит лишь переформатирование даты, остальное и так в одну конструкцию ![]() 5. Не стоит городить огород с if .. elif .. elif .. elif .. else. Возможно, проще будет записать словарем. 6. Всё же лучше разбить по модулям. 70кб-исходник тяжко читать, да и реиспользовать потом проще будет. Извини, дальше меня не хватило... Это сообщение отредактировал(а) J2A - 27.9.2006, 19:20 --------------------
Be easy, stay cool |
|||
|
||||
proDiva |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 19.9.2006 Где: КЧР, Россия Репутация: 7 Всего: 7 |
На долго же тебя хватило ![]() Я про это и говорила, что не знаю готовых функций для того или иного действия, поэтому громоздила громадный код. По всем этим мелочам неудобно новые темы открывать и мучать людей своими вопросами ![]() Я знаю, что все можно было написать проще и удобнее. Но я все равно довольна, что я ее доделала, а главное - что она работает! Потому что когда я начинала ее писать, я питоновский код впервые в глаза увидела. Как наш зав.кафедрой на лекциях говорил: "Есть прорыв! Идем дальше!" Так что, интеллигентная мужская компания, продолжайте учить дальше ![]() |
|||
|
||||
PyAlexey |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.9.2006 Где: Россия, Нижний Но вгород Репутация: 6 Всего: 7 |
Кстати, проверьте свой код на вшивость: http://pychecker.sourceforge.net/
|
|||
|
||||
J2A |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 171 Регистрация: 17.11.2005 Где: Омск Репутация: 16 Всего: 18 |
Проверьте pylint'ом и ужаснитесь ![]() ![]() Это сообщение отредактировал(а) J2A - 27.9.2006, 20:44 --------------------
Be easy, stay cool |
|||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
||||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
А можешь показать пример использования? ![]() Это сообщение отредактировал(а) pythonwin - 28.9.2006, 08:21 |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |