Общие вопросы, касающиеся языка Python - PullRequest
0 голосов
/ 19 декабря 2009

Я новичок в программировании, и я решил начать с Python. Просто любопытно, достаточно ли / рекомендуется изучать Python из онлайн-учебников или из книг? Я хочу пойти дальше простого "Hello World!" программы. Я не уверен, научат ли вас книги тому, как создавать более продвинутые программы.

Один из примеров: Exif-py . Как вы вообще начинаете программировать такую ​​программу? Вы просто садитесь и начинаете писать код, или вам нужно искать API или что-то еще? Я кратко просмотрел код, и он показался мне чуждым.

Я не совсем уверен, как выразить мои вопросы словами, так что проверяйте, потому что я отредактирую свой вопрос, если мне придут правильные слова.

Ответы [ 6 ]

4 голосов
/ 19 декабря 2009

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

Чтобы создать такую ​​программу, как Exif.py, вы должны сначала знать, что вы должны делать в широком смысле, ДО начала программирования. Вы изучите формат EXIF, затем выясните, как это помещается в файлы изображений, а затем вам нужно будет сформулировать это с точки зрения языка, который вы используете (в данном случае, Python). Обычно для этого необходимо, чтобы вы с ним уже были знакомы, иначе это будет довольно медленный процесс.

Я бы посоветовал начать с более простых программ или начать с такой книги, как Dive Into Python (бесплатно онлайн), поскольку вы новичок в программировании, и вам нужно не только изучать язык, но думать как программист.

2 голосов
/ 19 декабря 2009

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

Это немного устарело - для достижения наилучших результатов используйте Python 2.6 или ниже, но опять же 3.0 не , что отличается.

РЕДАКТИРОВАТЬ: Если ThinkCSPy мало чему вас научит, попробуйте Dive Into Python . Это продвинутый и довольно "реальный мир", но шаг за шагом.

2 голосов
/ 19 декабря 2009

Если под ' новичком в программировании ' вы имеете в виду, что вы только начали его на прошлой неделе или что-то в этом роде, то, возможно, вы захотите дать MIT OpenCourseWare Введение в компьютерные науки видео (и домашняя работа!) немного вашего времени.

Открытый курс охватывает синтаксис языка Python, некоторые полезные советы и общие do's и don'ts , применимые к любой парадигме программирования.

Хотя, если « новичок в программировании », то вы уже знаете основные понятия, необходимые для начала написания базовых программ (таких как сложение, вычитание, умножение, логические операции, функции и т. Д.).

Если это так, Project Euler особенно хорош для тренировки этой черепной мышцы при решении задач с помощью программирования, хотя большинство проблем на сайте требуют от вас также знания математики (и если вы не т, хотя бы умеешь гуглить).

Просто помните, если вы застряли на чем-то, не отчаивайтесь! Это все часть обучения! Если вы действительно застряли, ищите ТАК!

2 голосов
/ 19 декабря 2009

Учебники предназначены для того, чтобы научить вас синтаксису языка и стандартной библиотеке, а не тому, как решить конкретную проблему программирования. Думайте о том, что вы изучаете там, как свой набор инструментов.

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

Если вы пытаетесь найти примеры более крупных проектов, я бы посоветовал взглянуть на Python Cheeseshop (индекс пакетов) и загрузить несколько пакетов, о которых вы слышали, чтобы увидеть, как они это сделали. Кроме того, люди часто публикуют полезные фрагменты кода в своих личных блогах, и это появляется на PlanetPython .

1 голос
/ 19 декабря 2009

Есть несколько очень хороших онлайн-ресурсов:

Другой список ресурсов: Основной список чтения Python .

Большинство книг по Python, которые я видел до сих пор, "не так хороши" - но это зависит на вашем фоне / предварительные знания о Python и программировании.

0 голосов
/ 19 декабря 2009

Вы изучаете формат EXIF, изучаете формат GIF / JPEG, открываете двоичный файл, сканируете его и извлекаете данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...