How much wood would a woodchuck chuck if a woodchuck could chuck wood :)
Самый лучший способ выучить питон за месяц это....? У меня через месяц экзамен, но дела мои с ним идут плохо (( Я в принципе понимаю что стоит в учебнике, но когда дело доходит до лабораторных работ - там у меня ничего не получается (не могу сама додуматься что нужно написать, чтобы заработало). Что еще можо сделать в моем случае? Под "выучить" имеется ввиду знание основных комманд, функций, написание простеньких "программ" (которые чего-то простенькое могут высчитывать, например).

@темы: Вопрос

Комментарии
30.09.2013 в 17:25

Встречал ли кто-нибудь честного человека, у которого серые глаза? (c)
Печатайте побольше кода, не просто смотрите в учебнике, а именно сами печатайте, хоть и подглядывая на примеры.
www.codecademy.com/ru/tracks/python
Если вас не пугает английский. Там вам сразу и практика будет: мне кажется, вам именно что практики не хватает.)
30.09.2013 в 17:34

この世界は。。。いいですか?
...это писать на Питоне.
Забейте пока на лабораторные. Напишите для начала хелловорлд. Потом сосчитайте, сколько будет дважды два. Потом выведите таблицу умножения, и так далее, по нарастающей.
Вам не нужно зазубривать и теоретически понимать, "что стоит в учебнике". Нужно пользоваться сначала простейшими конструкциями, потом, как они будут отточены до автоматизма - чуть более сложными, и т.д.
Выучите прежде всего правила объявления переменных, операции ввода-вывода, арифметические операции, циклы. Попользуйтесь этим, потом двигайтесь дальше.

Самое главное, вам не нужно "додумываться, что нужно написать".
Перед тем, как браться писать программу, составьте и продумайте алгоритм - последовательность элементарных простейших операций, на которые разбивается задача при решении её человеком на бумаге. Имея алгоритм (например, в виде блок-схемы), вы автоматически поймёте, какие из уже известных Вам конструкций Питона потребуются для его реализации и в каком порядке. Что-то мне подсказывает, что самая главная проблема у вас - именно с алгоритмизацией, а не с Питоном как таковым. Однако месяц - срок изрядный, если постараетесь, успеете.
30.09.2013 в 18:10

IDDQD - Команда молодости нашей, команда, без которой мне не жить.
дополняя nio
Самый лучший способ выучить новый язык (или средство) - начать активно активно им пользоваться. Т. е. придумываете себе задачу по разработке какой-нибудь программулины, и начинаете её писать. Пусть криво, путь постоянно спотыкаясь, но двигаться к реализации. И, самое главное, довести реализацию до конца. Когда закончите, должно возникнуть ощущение, что "всё это надо было делать иначе!". Если оно возникло - значит опыт приобретён, и можно браться за лабы. :D
30.09.2013 в 19:42

А пошли вы все к Ефесянам.
Learn Python the hard way. Предполагается, что хорошо знаешь любой другой язык. Если не знаешь - дело гиблое и бесполезное, бросай это и иди пить чай.
30.09.2013 в 19:45

Миру - мир. А Вам - пломбир!
Поддерживаю предыдущих комментаторов nio и Flex Ferrum! Чтобы что-то изучить – нужна цель. А самые-самые основы можно пробежать по учебнику вроде вот такого.

ps: nio, кому хоть когда-нибудь помогли блок-схемы? Максимум – майндмапы, да и то если в процессе лапша. Для самого начала рекомендую "пошаговый дебаг".
30.09.2013 в 19:47

Don't stop the music.
.umi,
Предполагается, что можешь помочь человеку. Если не можешь - дело гиблое и бесполезное, бросай это и иди пить чай.
30.09.2013 в 21:00

тролль - это не только ценный жир, но и 3-4 легкоусвояемых коммента ежедневно
проблема звучит как "мне нужно за неделю съесть торт, хотя я не хочу его есть"
кому первому пришло в голову из программирования - одного из удовольствий в жизни современного человека - делать обязаловку?
30.09.2013 в 21:50

IDDQD - Команда молодости нашей, команда, без которой мне не жить.
CD_Eater, ну как-то так, да.
Bunny Hop, пока всё выглядит так, что вы пошли на программиста не совсем понимая, зачем именно вам это нужно. И не в смысле что "потому что хочу учиться в том университете". Как только у вас появится это понимание, вы поймёте, какие именно программы хотите писать - у вас появится мотивация изучать языки. Пока понимания не будет - будут такие вопросы.
30.09.2013 в 22:26

Миру - мир. А Вам - пломбир!
CD_Eater, некоторым специальностям нужно программирование в обязательном порядке (например, некоторым биологам) и оно для них – далеко не самое главное, а инструмент для достижения цели, не более того.
30.09.2013 в 23:07

тролль - это не только ценный жир, но и 3-4 легкоусвояемых коммента ежедневно
Скептичный циник, это кто ж так над биологами прикололся?
вместо юзер-френдли гуя у них в используемом ими софте текстовое окошко для ввода питоновского кода?
))
30.09.2013 в 23:24

Миру - мир. А Вам - пломбир!
CD_Eater, эта тема – оффтоп.
30.09.2013 в 23:26

How much wood would a woodchuck chuck if a woodchuck could chuck wood :)
острое карри., А я уже сижу там )) Но только вот там слишком уж легко (либо я не настолько далеко зашла) - там прямым текстом говорят что делать, а с этим проблем у меня нет.



nio, Я всегда все примеры из книг пишу и проверяю на практике. С простейшими (хотя что подразумевается под "простейшими"?) конструкциями у меня вроде проблем нет. Они начинаются когда дается определенное задание (и код уже состоит из нескольких задач). Вот я даже конкретный пример приведу: задание было написать код, чтобы высчитывать эээ... не знаю как это на русском. В общем, Newton-Raphson's methоd, с вот этой вот формулой

читать дальше

И код вот такой написать надо было


вот такой

Я кучу времени просидела, но так ничего и не придумала, но как только мне показали этот код - все стало понятно. И так со всеми заданиями. То-есть, кажется что между тем что я умею, и такими заданиями есть еще чего-то, чего я пропустила ( хотя ведь вроде усердно "забавляюсь" со всеми примерами которые вижу).

Flex Ferrum, я помню, вы уже говорили, но я совершенно не понимаю как можно писать программу, когда не можешь даже простенькую лабу написать!

.umi, Зачем же бросать?

CD_Eater, Неее.... ваш пример не правильный. В моем случае это "съесть торт за минуту". То-есть, он вкусный и его хочется, но времени мало.

Flex Ferrum, А причем тут мотивация? Мне нравится это учить, но я не знаю чего именно учить, чтобы через месяц экзамен сдать. То-есть, основная проблема - это время.

Скептичный циник, Нет, я учусь на факультете компьютерной инженерии и не жалею что выбрала это образование. Мне нравятся предметы и мне интересно их учить, проблема в том, что у меня не получается пока-что (питон).
30.09.2013 в 23:30

Жизнь слишком коротка, чтобы лечить себя от себя / Just born to find my sampled piece of mind
Bunny Hop,
Присоединяюсь к предыдущим ораторам. Простое чтение учебника почти ничего не дает. ну да читается, да понимаешь код, а потом белый лист.. "... и че?". Но надо все-таки разделить вопросы. Вопрос что писать - это вопрос составления программ, на этом уровне (основных конструкций, функций, типов) он примерно одинаков на большинстве языков программирования... берем задачу, раскладываем на шаги, шаги на операции. А потом вспоминаем на каком нам надо языке и переводим. Тут возникает второй вопрос "а как перевести?" Но ответы на него кроются в гугле, когда примерно знаешь какую операцию тебе надо совершить и ищешь ответ как сделать это на нужном языке или в нужной среде.
Сначала, конечно, выходит каша.. но основы зато запоминаются.

Скептичный циник,
оффтоп. Ну мне помогают блок-схемы... и на крайняк моделирование процессов. А майндмапы достигли моего мозга сравнительно недавно и в работе до сих пор не прижились вот и пока приносят больше лапши, чем пользы. Возможно вопрос "кого как учили".
30.09.2013 в 23:33

How much wood would a woodchuck chuck if a woodchuck could chuck wood :)
В общем я поняла - нужна ПРАКТИКА. Много практики. Надеюсь поможет.
30.09.2013 в 23:34

How much wood would a woodchuck chuck if a woodchuck could chuck wood :)
Drakosha, ну да читается, да понимаешь код, а потом белый лист.. "... и че?"

Вы прям идеально мою проблему сформулировали! ))
30.09.2013 в 23:52

Жизнь слишком коротка, чтобы лечить себя от себя / Just born to find my sampled piece of mind
Bunny Hop,
я страдала этим когда-то. Пока не началось "много практики" ). Удачи.
01.10.2013 в 00:02

Миру - мир. А Вам - пломбир!
Bunny Hop, всё в последний момент? (: Посмотри вот этот курс от MIT – он достаточно короткий чтобы быстро пройти, плюс, для подобных задач (как в комменте выше) его хватит. ООП он затрагивает только в конце.

Если дедлайн поджимает, то могу предложить два алгоритма обучения:
1. Можно сначала описать программу императивно ("псевдокодом" или просто по-русски), то бишь, построить алгоритм. А затем уже этот алгоритм постепенно переписывать в код. Тогда будут вопросы не "Как написать программу?", а конкретные вроде "Как написать посчитать фибоначчи?", которые намного легче нагуглить.
2. Попробуй взять тот же метод Ньютона и посчитать пошагово(!) вручную. А затем по шагам писать программу так, чтобы промежуточные результаты программы совпадали с расчитанным ранее результатом.

Drakosha, асболютно согласен. Чем больше практики, тем лучше получается. А насчёт блок-схем.. и часто они нужны для фибоначчи, озвученного выше метода Ньютона или для написания игры hangman? (:
01.10.2013 в 00:16

How much wood would a woodchuck chuck if a woodchuck could chuck wood :)
Скептичный циник, Не, я все проходила как в расписании было, только первая лаба была "напишите программу, которая высчитывает ингридиенты для кексика для стольки-то человек", а вторая (через неделю после первой) - метод Ньютона и иже с ним. То-есть, до этого уровня надо было за 3 недели дойти (при условии того, что еще же полно всякого другого сдавать надо). Для русских студентов это конечно ничего, а я, изнеженная девочка, немного в шоке )).

Спасибо за ссылку.

О, а эти методы мне как-раз на днях показывали парни со старших курсов! Действительно очень помогает! То-есть, я сама еще ими как следует не пользовалась (когда начинаю писать лабу - у меня нaчинается паника и я пишу какую-то фигню "на угад", отчаянно надеясь что сработает), но когда мне кто-то другой этим способом расписывает - тогда я даже сама могу код под это написать!
01.10.2013 в 00:19

Жизнь слишком коротка, чтобы лечить себя от себя / Just born to find my sampled piece of mind
Скептичный циник, честно говоря мне куда чаще приходится сталкиваться со скучными и обыденными прикладными алгоритмами (всякая не так гордо звучащая и скучная фигня вроде конструирования и разработки интерфейсов, сообщения с базами данных, структурами данных или, на худой конец, стереометрическими вычислениями). В этой сфере, блок-схемы (возможно я не очень строго их строю... но что с того? ) весьма помогают для упорядочивания мысли.

Впрочем, какие мои годы, это может быть просто этап развития, и через тройку лет я соглашусь, не знаю. Но я склонна по природе все сваливать в кучу и путаться в трех соснах, поэтому мне помогает расписать с помощью блок схемы логику работы какого-то куска, чтобы ничего не забыть когда начну кодировать.

ЗЫ. Подумав. Хотя помнится я и фибоначчи в студенчестве писала блок-схемами. Мне это помогает начать думать. )
01.10.2013 в 00:23

Миру - мир. А Вам - пломбир!
Bunny Hop, да, используйте эти методы пока что. Ещё, если программа написана, но даёт не те результаты – не стесняйтесь повсюду понавставлять print и выводить все промежуточные значения переменных чтобы отследить – где ещё правильно, а где уже нет.
Для начала очень удобный и очевидный инструмент. После многих строк практики, когда это будет использоваться уже редко, то можно перейти на использование дебаггера чтобы не трогать код на каждый чих.
ps: Попробуйте освоить nosetest или хотя бы doctest. Если сходу не получится – неважно, просто отложите на потом. Очень полезный инструмент, когда кода больше, чем одна-две функции.

Drakosha, на вкус и цвет (: Если конкретно вам помогают блок-схемы, то это хорошо. <Субъективное_ИМХО>На лично моём опыте, не видел ни одного программиста, рисующего блок-схемы. UML или mindmaps – да, много и часто. А блок-схемы – нет. Просто потому, что проще написать if..else, чем нарисовать ромбик или for/while, чем стрелочку вверх.</Субъективное_ИМХО>
01.10.2013 в 00:39

Жизнь слишком коротка, чтобы лечить себя от себя / Just born to find my sampled piece of mind
Скептичный циник, древняя привычка прорабатывать на бумаге моменты которые не вижу сразу. На бумаге писать какие-то операторы (разче тчо совсем запущенный случай и это псевдокод в принципе) мне муторно и проще нарисовать стрелочки ))) Но да. субъектив ).
01.10.2013 в 00:58

IDDQD - Команда молодости нашей, команда, без которой мне не жить.
но я совершенно не понимаю как можно писать программу, когда не можешь даже простенькую лабу написать!
Эммм... Фишка в том, что в первую очередь должна быть идея. Ну, грубо говоря, хотя бы так: "Хочу написать программу, которая складывает два числа, введённых с клавиатуры". Т. е. сначала - постановка задачи, потом - реализация. Без постановки задачи, её понимания не будет понимания того, а зачем нужно всё остальное.
01.10.2013 в 01:14

А пошли вы все к Ефесянам.
Bunny Hop, Зачем же бросать?
В мире и так полно людей, которые занимаются тем, что не умеют и не любят. Даже в этом треде. Если хотите учить язык - учите, ищите мотивацию. Не хотите - не мучайтесь, не ваше это. Дозубрите до нужной кондиции и забудьте. Спрашивать советов в стиле "помогите мне захотеть" не помогло ещё никому.
01.10.2013 в 03:47

この世界は。。。いいですか?
Я кучу времени просидела, но так ничего и не придумала, но как только мне показали этот код - все стало понятно.
Тогда вам действительно лучше оставить пока Питон, на недельку - видно, что не в языке дело, с С/С++ или даже с Basic было бы тоже самое. Плотно займитесь алгоритмизацией.