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