Найти - Пользователи
Полная версия: После сборки cx_Freeze'ом экзешник ругается на import win32print и win32ui
Начало » GUI » После сборки cx_Freeze'ом экзешник ругается на import win32print и win32ui
1 2 3 4
a.bondarenko
Т.е., pip все сам делает (подтягивает зависимости)?
FishHook
a.bondarenko
Скажите, пожалуйста, а вам гуглом пользоваться западло, да?
a.bondarenko
Гуглом и яндексом я пользуюсь активно, но получаю обычно не то, что меня интересует. Я понимаю ваше возмущение, наверное, не хватает мне образования. Но вот пример, скачал недавно книгу по питону, начал разбирать коды, и что вы думаете, из 18 строк кода (прямо из первого примера) - одна строка вообще пропущена, две других не работает. С трудом догадался как сделать, чтобы сработало. Например:
deck._init_() # в исходном коде этот оператор был пропущен (инициализация экземпляра)
deck._len_()) # —-“——- было len(deck), что дает ошибку
Ну и так далее. Закрыл эту книгу и удалил.
Если вам, FishHook, ”не западло", возьмите надо мною шефство. Я, хоть и в годах, еще способен учиться (обо мне можно посмотреть на сайте www.ntctt.boxmail.biz далее Рабочий кабинет => About..). В рамках изучения питона написал программу генерации экзаменационных билетов, да вот не могу никак сделать экзешник, чтобы передать (бесплатно) своим коллегам. Войдите, пожалуйста, в мое положение.
FishHook
a.bondarenko
deck._len_()) # —-“——- было len(deck), что дает ошибку
не дает это ошибку

 class Foo:
     
    def __len__(self):
        return 5
  
f = Foo()
print(len(f))

a.bondarenko
Гуглом и яндексом я пользуюсь активно, но получаю обычно не то, что меня интересует.
А откуда по-вашему другие участники коммьюнити берут информацию? Интернет у нас один, в чем сложности найти например вот эту статью в википедии, в ней есть множество ссылок на документацию, и прочитать её? Ведь конечно же если вы сами получите информацию из первоисточника, это будет гораздо эффективней, чем получить чей то вольный пересказ.
a.bondarenko
Я вас понял. Будем сами копаться.
Вот описание класса из книги (комментарии мои) из той книги:
class FrenchDeck:
ranks=+list('JQKA') # цена карты
suits='spades diamonds clubs hearts'.split() # масть карты
def _init_(self): # служит для задания начальных значений (инициализация)
self._cards=
def _len_(self): # выдает количество элементов
return len(self._cards)
def _getitem_(self,position): # в исходном коде отсутствовал position
return self._cards # выдает элемент коллекции по номеру
beer_card=Card('7','diamonds') # задаваемая карта
print(beer_card)
deck=FrenchDeck() # создает именованный экземпляр класса
deck._init_() # в исходном коде этот оператор был пропущен (инициализация экземпляра)
print(deck._len_()) # —-"——- было len(deck), что дает ошибку
print(deck._getitem_(-1))
print(deck._cards)# —"——- было deck, что дает ошибку
choice(deck.ranks) # выбор случайной цены карты (choice(deck)не работает)
choice(deck.suits) # выбор случайной масти карты
print (“выбор случайной цены карты=”,choice(deck.ranks))
print (“выбор случайной масти карты=”,choice(deck.suits))
beer_cardv=Card(choice(deck.ranks),choice(deck.suits)) # случайная карта
print (beer_cardv)
Я считаю, что если уж написано в книге, то должно фурыкать без вопросов. len(deck) точно не работает. М.б., версия питона не та, не знаю. Там же и choise(deck) не работал, пришлось отдельно выбирать атрибуты (ranks и suits).
FishHook
a.bondarenko
Я не знаю, какой именно учебник вы читаете, и тем более не хочу отвечать за автора учебника, но в каждой книге по питону, которую я читал, специально выделялся тот момент, что знаков подчеркивания в именах магических методов должно быть два. Более того, я вам только что показал рабочий пример, и не увидеть в нем, что метод пишется так
 __len__
а не так
_len_
надо еще постараться. Скажите, как называется ваш учебник?
Rodegast
> Т.е., pip все сам делает (подтягивает зависимости)?

Совершенно верно.

> deck._init_() # в исходном коде этот оператор был пропущен (инициализация экземпляра)

Эти методы нужно определять с двумя (а не с одним!) подчёркиваниями с двух сторон. Если это сделать то код из книги будет правильно работать.
a.bondarenko
Да, я виноват с этими двумя подчерками (не рассмотрел, как следует, был pdf-экземпляр книги, коды были видны очень плохо, копирование не работало). Я тоже читал про два подчерка, но по тупости думал, что это относится к тому, что они имя окаймляют с обоих сторон, а то, что они выглядят длиннее, не пришло в голову. Простите ради бога.
py.user.next
a.bondarenko,если уж взялся программировать, то поставь себе линукс (второй системой или на виртуальную машину в винде (лучше второй системой)) и освой систему контроля версий Git и сайт https://www.github.com , куда можно выкладывать код. Даже вот сам питон развивается сейчас на github'е ссылка. Это мейнстрим.

a.bondarenko
обо мне можно посмотреть на сайте www.ntctt.boxmail.biz далее Рабочий кабинет => About
Устаревшее у тебя там всё, включайся в современные средства.
a.bondarenko
Да, ребята, каждый новый критик или помощник имеет все больший рейтинг, вначале было 135, а теперь уже 554. Да, действительно, все устарело, согласен, да ведь я не профессиональный программист, а любитель. Начинал-то еще в 1964 году на ламповых машинах и перфокартах, когда вас, вероятно, еще не было на свете. Все что делал - было на голом энтузиазме. Рад бы включаться в современные средства, но нет уже “тямы”. Но вы все молодцы, завидую вам. Спасибо вам, что вы есть.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB