Форум сайта python.su
Нужно два класса. Карта и колода. Свойство карты - масть, значение, имя. Свойство колоды - список карт. Методы колоды - перетасовать, переинициализироваться. Первый метод вызывает random.shuffle на списке карт. Второй очищает список и делает вот ту страшную магию по созданию нового.
Офлайн
а что значит переинициализироваться?) В данном контексте не понял, что это значит
Офлайн
У колоды должен быть метод который сгенерит список кард и сохранит их. Сейчас ты делаешь это одной строкой, которая не привязана ни к каком классу. Есть возможность вынести ее в класс.
Офлайн
шаманил я шаманил, так ничего и не вышло. Я, видимо, не совсем правильно понял ООП- подход.
Вот строю я эти классы-методы. Пишу для IDLE, без интерфейса. Хочу только чтобы в процессе выполнения програма показывала мне инфу о картах и спрашивала ввода ( ну хода моего грубо говоря)
Но я вот не могу создать такой класс и такой обьект, чтобы так происходило. А если вводить всякие условные блоки с if когда я получу, к примеру, свои карты, то это уже будет не ооп а функциональный подход. Скажите, в чем я ошибаюсь, потому что прочитал в книгах про ООП все элементарные программы понимаю. А на своем примере применить не получается
Офлайн
Начать надо с переименования класса Cards в Card. Если не понимаете ООП, книжки почитайте. С шаблонами проектирования тоже не лишне ознакомиться.
А так только больше запутаетесь. И вообще, зачем вам ООП, заведите себе список кортежей(масть, старшенство) и тасуйте его как душа пожелает.
Кстати, подход, о котором вы говорите, будет не функциональный, а процедурный.
Офлайн
Продолжай, не останавливайся :) Попробуй сменить задачу. Сделать перерыв пару дней и вернуться к ней. Нужно накопить какое-то критическое количество материала, подходов, взглядов с разных позиций на разные задачи, чтобы мозг наконец сложил эту мозаику и вычленил главные моменты. Как и в любом деле нужно нарабатывать опыт. Если появляются сомнения и вопросы, то читать, спрашивать. Первый этап всегда самый медленный и сложный, важно переломить и перешагнуть его.
Офлайн
Продолжаю мучить эту программу Решил проверить как часть кода работает на Убунту. Во всех ИДЕ, кроме стандартного выдает такие вот непонятные символы:
хотя в начале кода я добавил строки
#!/usr/bin/python # -*- coding: utf-8 -*-
Офлайн