А какой смысл учить вторую версию? Только совместимость с существующими решениями, ещё не портированными на py3k. Если это важно, то учите вторую, если нет — третью.
Ну, на том же diveintopython3.org автор говорит, что там 80% нового материала по сравнению со старой версией книги. Соответственно я и обеспокоился этим вопросом. Мне кажется, книги не отличались бы так сильно, при минимальных отличиях между версиями.
> Ну, на том же diveintopython3.org автор говорит, что там 80% нового материала по сравнению со старой версией книги. Соответственно я и обеспокоился этим вопросом. Мне кажется, книги не отличались бы так сильно, при минимальных отличиях между версиями.
Язык v.3 просто «подчищен», это тот же язык. Читай версию книги для третьего питона, и делай примеры например на Python 2.7 (большая часть заработает без изменений в коде).
Плюс это дизасм самого python по отношению к байт-коду и почему же о части стандартной библиотеки нельзя и слова сказать, учитывая что байт-код и есть то с чем фактически работает интерпретатор
Ну, думаю нагляднее всё то же самое проиллюстирирует исходный код Python runtime, а не результат дизассемблирования. по крайней мере- сишный код более читаем и прост для понимания и изменения, чем ассемблерный.
Ну смотрите в данном куске лекции нет задачи разжовывать подробно как генерируется runtimeомом код, иначе мы получим еще одну Книгу дракона:) А задача провести небольшую экскурсию в машинное отделение корабля, не заставляя пачкаться почтенную публику в машинном масле.И с этой точки зрения приведенный байт-кодовый выхлоп при этом нормально откомментированный позволяет и, не вдаваясь в Сишные детали, кодогенерации провести обещанную экскурсию. Ибо даже с С-кодом тема кодогенерации неслишком проста
Но изучение результатов дизасемблирования позволит провести «общую экскурсию», а не подробное изучение внутренних механизмов только в случае относительно небольшого кода. Иначе это превратится в садомазо и проще будет перечитать исходники.
Ну кстати Андрей Светлов довольно таки дельный питонер, выступал с докладами и на Pyconf например,не чурается использовать дизасм при оптмизации скриптов. Нет конечно не как основной, но как вспомогательное средство и не считает это уж таким садизмом
Там выше посоветовали diveintopython. Так вот, с DIP начинать ни в коем случае не стоит, если вы собираетесь работать с python 2.x.
Если опыт программирования есть можете сразу читать официальный туториал - там все достаточно хорошо разжевано. Если опыта программирования нет - тогда лучшим вариантом, наверное, будет Learn Python the Hard Way
Эхх, виноват - я, честно говоря, даже и не рассматривал это, как проблему. Может быть, есть смысл перебороть себя и прочитать по-английски? Ведь документацию все равно придется потом по-английски читать.
Может быть, отпишусь потом по поводу «бумажного и русскоязычного», если найду/вспомню.