2010-08-06 3 views
13

Я пытаюсь научить себя Python, и я понял, что единственный способ, которым я действительно научился, - это прочитать настоящие программы. Учебники/руководства просто заставляют меня чувствовать себя глубоко смущенными.Элегантный Python?

Это просто мой стиль обучения, и я подобен этому со всем, что я изучал (включая естественные языки - мне удалось учить себя трех из них, просто попав в настоящий «поток») ,

Классическая музыка однажды имела концепцию «гаммы» - хитроумно исполняя весь спектр инструмента. Я предполагаю, что может быть несколько хорошо написанных сценариев, которые действительно показывают каждую особенность языка. Неважно, что они делают, я просто хочу начать изучать Python, читая сами программы.

Я помню, как я сталкивался с подобным методом несколько лет назад, когда изучал LISP. Это была книга, издаваемая Springer Verlag, состоящая исключительно из программ AI, для чтения по их дидактическим достоинствам.

+1

Это может быть нелогичным, но я также обнаружил, что чтение * очень плохо * код полезен - рассмотреть как вы читаете его, что с ним не так, и как его можно улучшить. (Но * после * вы изучили стандартную библиотеку, как предлагает Алекс!) – bstpierre

+1

Я, скорее всего, скопирую ошибки людей, чем вы. =) Мой мозг просто любит копировать людей. Я провел своих последних подростков и начала 20-х годов, превратив их в метод самостоятельного изучения. Не то, чтобы я невообразим - я очень изобретателен, и это проблема и решение. – magnetar

+0

До сих пор мой fav является «запросами», это нетривиально, элегантно и стилистически звучит. Хотя у меня есть некоторые оговорки относительно более активного использования библиотеки, это явно хороший кандидат на «гамму». –

ответ

18

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

Edit: Я должен отметить (или моя жена и соавтор Анна пригрозил не сварить вкусный стейк я вижу ожидания ;-), что Python Cookbook, второе печатное издание, а также имеет много примеров кода, в лучшем стиле, с которыми Анна и я могли бы их сделать, и с существенным обсуждением вариантов стиля и альтернатив. Однако, он застрял во времени до дней Python 2.4 (извините, сейчас нет времени, чтобы сделать третье издание на данный момент ...), и это настоящий блок для некоторых людей (хотя я думаю, что, получив хороший Python 2.4 стиль, переход к хорошему стилю 2.7 или 3.1 - действительно «инкрементный» вопрос, это определенно субъективное мнение). «Объявляя мой интерес»: мы с Анной все еще получаем некоторые роялти, если вы покупаете книгу, и, что более важно, Python Software Foundation (близкий и близкий к нашим сердцам) наш номерный знак Prius's vanity, читает «P ♥ THON». ..! -) получает больше - так очевидно, что мы склонны в пользу книги ;-). Если вы не хотите тратить деньги, вы можете прочитать некоторые части книги онлайн и бесплатно в Google Книгах (O'Reilly получает возможность выбирать, какие части, таким образом, свободно читаемы, поэтому, пожалуйста, не жалуйтесь на me [[или Анна]] об этих вариантах ...! -).

Желаю, чтобы я порекомендовал онлайн-издание Поваренной книги, в которой есть рецепты, которые очень свежие, а также классические старые, среди которых мы выбрали и выбрали большинство печатных изданий - но, к сожалению, там есть много проблем стиля со слишком большим количеством онлайн-рецептов, чтобы рекомендовать их коллективно как «примеры хорошего стиля» (и это касается рецептов хороших: большинство рецептов, которые мы выбрали для книги, мы также сильно отредактировали, чтобы улучшить стиль (и читаемость, и производительность, но те часто идут рука об руку с Python).

Смежные вопросы