Не смог удержаться от того, чтобы не попробовать первые бета-версии Python 2.6 и 3.0. В результате разродился довольно большой статьей про то, что в них появилось нового. Статься лежит здесь
» Язык программирования Python (Питон, Пайтон)
Спасибо за статью, прочитал с удовольствием.
Не может не радовать куда движется питон.
Не может не радовать куда движется питон.
Питон исключительно радует.
Я его освоил меньше 2х лет назад, случайно и постепенно - он используется с продуктом на работе. Ну и до этого наталкивался - не оценил. Осваивал медленно, кусками. В итоге понял, что это полноценный язык, исключительно мощный и гибкий, справляющийся с практически любой задачей лучше и лаконичнее, чем любые известные мне альтернативы (С++, Java, PHP, Lisp/Scheme, Pascal), причем скрипты остаются читаемыми, а знания оседают (в отличие от скажем Перла - напишу скрипт, отойду, потом опять приходится вспоминать, какая закорюка чего в данном контексте означает и что в неявных переменных. брр).
Вообще я в основном работаю с С++ (по работе), но дома всё больше перехожу на Питон (но С++ таки хоронить пока рано, у него своя ниша есть).
Веб программирование раньше делал на PHP, но разобравшись в Питоновом модуле cgi и его друзьях, теперь перевожу всё на Питон - PHP полностью потерял сексапильность. Всё, что задалбывало в PHP - глобальность функций, уродливая типизация, уродливое ООП (улучшенное в PHP5, но слишком мало, слишком поздно), отсутствие модульности (include втыкает текст) - для чего приходилось делать хитрожопые workaround'ы - всё это более-менее решено в Питоне, и при переписывании страницы зачастую всё упрощается и аккуратно решается стандартными средствами языка на месте. PHP хорош для новичков, которым нужно воткнуть немного логики в HTML, не вникая в детали работы с CGI (честно говоря, питоновый модуль cgi представляет из себя некоторый барьер в плане начального изучения, по сравнению с PHP, который бесплатно дает _GET, _POST и т.д. - я в итоге написал свой вспомогательный модуль, который делает это при инициализации, и работать стало ничуть не гиморнее чем с PHP). Есть еще mod_python - не пробовал, в хостинге модули апача напрягают.
В плане доступности - Питон доступен практически на всех платформах, в т.ч. всех юниксах и линуксах - на Линуксах он как правило установлен по умолчанию. То же в плане хостинга - если есть CGI и Perl, то скорее всего есть и Питон.
Среди достоинств Питона:
* динамическая но четкая типизация (переменные имеют четко определенный тип, и допустимы только хорошо определенные либо явные операции и преобразования).
* модульность - внутренности модуля локальны для этого модуля, но явно и легко доступны
* "всё есть объект" - функции, классы, методы - могут передаваться как значение
* интроспекция - если возникают вопросы о сущности и внутренностях какого-то объекта или модуля, или наличии и точном имени методов - легко с ними ознакомиться с помощью dir(), в т.ч. из интерактивной консоли или IDLE, что существенно упрощает обучение. также есть help().
* библиотека стандартных модулей на все случаи жизни - сокеты, протоколы, базы данных, что угодно.
* удобная работа с массивами, словарями, строками, итерация и т.д.
* map, filter, lambda..
* приличный интерактивный интерпретатор из командной строки
* IDLE - всё то же, но более интерактивно - в свежих версиях есть auto-complete, что избавляет от необходимости dir() при освоении.
* совместимость кода между версиями Питона, и поддержка старых версий Питона = стабильность
Но есть и недостатки:
* отсутствие статической типизации на этапе компиляции - статическая типизация таки помогает в сложных проектах, когда требуется, чтобы объект был определенного типа - иначе это может привести к сюрпризам во время выполнения. (статическая типизация может появиться в новых версиях).
* барьер в плане GUI и CGI.
* интерпретируемость и зависимость от собсно Питона и опциональных библиотек - для распространения продукта конечным пользователям это не радует.
До того как я распробовал Питон, ввиду хромания всех известных мне языков, я всё порывался написать свой собственный.. но теперь очевидно, что Питон обладает многими желаемыми свойствами идеального языка, и в будущих версиях всё больше.. так что если и сочиню что-то, оно будет под влиянием Питона.
Питону применений куча:
* мелкие скрипты для автоматизации, обработки текста и чего угодно
* веб программирование, с участием MySQL
* прототипы, требующие простора для полета фантазии - часто превращающиеся в полноценные программы
* карманный калькулятор с возможностью работы с файлами, сокетами и пр.
Показательно, что есть красочные отзывы от компетентных программистов, распробовавших Питон, и они имеют примерно одну и ту же суть, аналогично моему опыту.
Например, ESR написал такой отзыв. Также, только что обнаружил что он теперь рекомендует Питон как первый язык для обучения в How To Become A Hacker - раньше на этом месте была Java.
Я его освоил меньше 2х лет назад, случайно и постепенно - он используется с продуктом на работе. Ну и до этого наталкивался - не оценил. Осваивал медленно, кусками. В итоге понял, что это полноценный язык, исключительно мощный и гибкий, справляющийся с практически любой задачей лучше и лаконичнее, чем любые известные мне альтернативы (С++, Java, PHP, Lisp/Scheme, Pascal), причем скрипты остаются читаемыми, а знания оседают (в отличие от скажем Перла - напишу скрипт, отойду, потом опять приходится вспоминать, какая закорюка чего в данном контексте означает и что в неявных переменных. брр).
Вообще я в основном работаю с С++ (по работе), но дома всё больше перехожу на Питон (но С++ таки хоронить пока рано, у него своя ниша есть).
Веб программирование раньше делал на PHP, но разобравшись в Питоновом модуле cgi и его друзьях, теперь перевожу всё на Питон - PHP полностью потерял сексапильность. Всё, что задалбывало в PHP - глобальность функций, уродливая типизация, уродливое ООП (улучшенное в PHP5, но слишком мало, слишком поздно), отсутствие модульности (include втыкает текст) - для чего приходилось делать хитрожопые workaround'ы - всё это более-менее решено в Питоне, и при переписывании страницы зачастую всё упрощается и аккуратно решается стандартными средствами языка на месте. PHP хорош для новичков, которым нужно воткнуть немного логики в HTML, не вникая в детали работы с CGI (честно говоря, питоновый модуль cgi представляет из себя некоторый барьер в плане начального изучения, по сравнению с PHP, который бесплатно дает _GET, _POST и т.д. - я в итоге написал свой вспомогательный модуль, который делает это при инициализации, и работать стало ничуть не гиморнее чем с PHP). Есть еще mod_python - не пробовал, в хостинге модули апача напрягают.
В плане доступности - Питон доступен практически на всех платформах, в т.ч. всех юниксах и линуксах - на Линуксах он как правило установлен по умолчанию. То же в плане хостинга - если есть CGI и Perl, то скорее всего есть и Питон.
Среди достоинств Питона:
* динамическая но четкая типизация (переменные имеют четко определенный тип, и допустимы только хорошо определенные либо явные операции и преобразования).
* модульность - внутренности модуля локальны для этого модуля, но явно и легко доступны
* "всё есть объект" - функции, классы, методы - могут передаваться как значение
* интроспекция - если возникают вопросы о сущности и внутренностях какого-то объекта или модуля, или наличии и точном имени методов - легко с ними ознакомиться с помощью dir(), в т.ч. из интерактивной консоли или IDLE, что существенно упрощает обучение. также есть help().
* библиотека стандартных модулей на все случаи жизни - сокеты, протоколы, базы данных, что угодно.
* удобная работа с массивами, словарями, строками, итерация и т.д.
* map, filter, lambda..
* приличный интерактивный интерпретатор из командной строки
* IDLE - всё то же, но более интерактивно - в свежих версиях есть auto-complete, что избавляет от необходимости dir() при освоении.
* совместимость кода между версиями Питона, и поддержка старых версий Питона = стабильность
Но есть и недостатки:
* отсутствие статической типизации на этапе компиляции - статическая типизация таки помогает в сложных проектах, когда требуется, чтобы объект был определенного типа - иначе это может привести к сюрпризам во время выполнения. (статическая типизация может появиться в новых версиях).
* барьер в плане GUI и CGI.
* интерпретируемость и зависимость от собсно Питона и опциональных библиотек - для распространения продукта конечным пользователям это не радует.
До того как я распробовал Питон, ввиду хромания всех известных мне языков, я всё порывался написать свой собственный.. но теперь очевидно, что Питон обладает многими желаемыми свойствами идеального языка, и в будущих версиях всё больше.. так что если и сочиню что-то, оно будет под влиянием Питона.
Питону применений куча:
* мелкие скрипты для автоматизации, обработки текста и чего угодно
* веб программирование, с участием MySQL
* прототипы, требующие простора для полета фантазии - часто превращающиеся в полноценные программы
* карманный калькулятор с возможностью работы с файлами, сокетами и пр.
Показательно, что есть красочные отзывы от компетентных программистов, распробовавших Питон, и они имеют примерно одну и ту же суть, аналогично моему опыту.
Например, ESR написал такой отзыв. Также, только что обнаружил что он теперь рекомендует Питон как первый язык для обучения в How To Become A Hacker - раньше на этом месте была Java.
Появился сайт с русскоязычной документацией по Google App Engine (http://www.googleappengine.ru). Из вкусного - туториал и много примеров на Питоне.
Цитата:
Появился сайт с русскоязычной документацией по Google App Engine...
Вот за эту ссылочку большое спасибо.
python или phpscript?
scripterz
Цитата:
в шапке топика, по моему, все очевидно сказано.
Цитата:
python или phpscript?
в шапке топика, по моему, все очевидно сказано.
Зарелизили Python 2.6
Скачать: http://www.python.org/download/releases/2.6/
Что нового (eng): http://docs.python.org/dev/whatsnew/2.6.html
Скачать: http://www.python.org/download/releases/2.6/
Что нового (eng): http://docs.python.org/dev/whatsnew/2.6.html
Хотя тут топик посвящен веб-программированию в основном, но где задать такой вопрос еще не знаю.
И так, установил несколько дополнений для Питона (scipy, numpy, matplotlib) и возникает вот такая проблема: в shell все команда из этих приложений выполняются спокойной (zeros, например из numpy), а вот при запуске в командной строке всего файла *.py - выдается ошибка, что команда неизвестна, хотя в строке где идет импорт модуля (from numpy import *) никаких нареканий нет.
Помогите разобраться...
И так, установил несколько дополнений для Питона (scipy, numpy, matplotlib) и возникает вот такая проблема: в shell все команда из этих приложений выполняются спокойной (zeros, например из numpy), а вот при запуске в командной строке всего файла *.py - выдается ошибка, что команда неизвестна, хотя в строке где идет импорт модуля (from numpy import *) никаких нареканий нет.
Помогите разобраться...
Сын 10-11 лет, просит научить программировать
Есть ли нормальные методики для обучения.
Я как-то нашел книгу в инете, но она к сожалению была не законченой, что бы учить мальцов программированию на базе Питона.
Есть ли у кого полный вариант книги или что-то, чтобы ребенка можно было увлечь.
Возможно другой язык, но хотелось бы питон.
Есть ли нормальные методики для обучения.
Я как-то нашел книгу в инете, но она к сожалению была не законченой, что бы учить мальцов программированию на базе Питона.
Есть ли у кого полный вариант книги или что-то, чтобы ребенка можно было увлечь.
Возможно другой язык, но хотелось бы питон.
Belsen
А можно сюда сообщение об ошибке?
wellic
10-11? Лучше самому процесс вести на интересных примерах, книг таких точно нет.
А можно сюда сообщение об ошибке?
wellic
10-11? Лучше самому процесс вести на интересных примерах, книг таких точно нет.
Python 3.0 (a.k.a. "Python 3000" or "Py3k")
http://python.org/download/releases/3.0/
не совместим с веткой 2.x !!!
http://python.org/download/releases/3.0/
не совместим с веткой 2.x !!!
А куда податься новичку лучше - 2.6 или сразу в 3.0 ?
sundownhunter
Цитата:
Думаю, что лучше пока 2.6, для 3.0 пока еще мало сторонних библиотек.
Цитата:
А куда податься новичку лучше - 2.6 или сразу в 3.0 ?
Думаю, что лучше пока 2.6, для 3.0 пока еще мало сторонних библиотек.
sundownhunter
2.6
2.6
На ActiveState обнаружил кукбуки. В настоящее время на python не перешел только ленивый:
Цитата:
Цитата:
* Python (used in 2470 recipes)
* Tcl (used in 152 recipes)
* PHP (used in 40 recipes)
* C++ (used in 4 recipes)
* JavaScript (used in 3 recipes)
* Perl (used in 3 recipes)
* Text (used in 1 recipe)
Вот собираюсь изучить питон, и вообще язык программирования впервые, хочу спросить, с него лучше начинать? Или надо до него какой-то знать и какой лучше? И еще я не увлекаюсь Web"ом. Мне советовали сначала html потом php perl, а потом только Python. И хотелось бы знать какими полезными знаниями после изучения я буду обладать (ну что-бы не просто для галочки знать)
Lyuke
Если собираешься использовать Python для веба, то сначала надо знать HTML, а если для десктопных приложений, то не обязательно.
Если собираешься использовать Python для веба, то сначала надо знать HTML, а если для десктопных приложений, то не обязательно.
Lyuke
Цитата:
Цитата:
Добавлено:
Jenyay
Цитата:
Я бы добавил что ещё более важно понимать принципы HTTP (для web'а).
Цитата:
Вот собираюсь изучить питон, и вообще язык программирования впервые, хочу спросить, с него лучше начинать? Или надо до него какой-то знать и какой лучше?Отличный вариант для начала, ничего до него не нужно.
Цитата:
Мне советовали сначала html потом php perl, а потом только Python.Бред.
Добавлено:
Jenyay
Цитата:
Lyuke
Если собираешься использовать Python для веба, то сначала надо знать HTML, а если для десктопных приложений, то не обязательно.
Я бы добавил что ещё более важно понимать принципы HTTP (для web'а).
dvs
Цитата:
Согласен, но обычно в книжках (хороших) по программированию для web про HTTP и так пишут, поэтому с ним можно было бы разбираться параллельно.
Цитата:
Я бы добавил что ещё более важно понимать принципы HTTP (для web'а).
Согласен, но обычно в книжках (хороших) по программированию для web про HTTP и так пишут, поэтому с ним можно было бы разбираться параллельно.
Учебник по Python 3.1 на русском:
http://ru.wikibooks.org/wiki/Учебник_Python_3.1
Спасибо Роману Сузи и Ко
http://ru.wikibooks.org/wiki/Учебник_Python_3.1
Спасибо Роману Сузи и Ко
Спешу сообщить хорошую новость: готовится к выходу из типографии первая русскоязычная книга по Django: "Django. Разработка веб-приложений на Python". Ориентировочный срок выхода книги - июль 2009 г. Оригинальный вариант - тоже 2009 года.
Просвятите куда переехала рассылка ZoPyRus?
ZUBAHAникуда не переехал, http://zopyrus.itconnection.ru/cgi-bin/mailman/listinfo/zopyrus
Добавлено:
Зарелизили Jython 2.5.1, http://jython.org/
Добавлено:
Зарелизили Jython 2.5.1, http://jython.org/
Python 2.6.3 -- http://www.python.org/download/releases/2.6.3/
Подскажите, пожалуйста, если я распаковываю архив Enthought Tool Suite с деревом каталогов с сайта
Unofficial Windows Binaries for Python Extension Packages
в установочный каталог Python
c:/Python26/lib/site-packages
будут ли работать инструменты из этого набора или надо выполнить какие-то действия по дополнительной настройке?
Извиняюсь за ламерский вопрос, я только начинаю осваивать Python
Unofficial Windows Binaries for Python Extension Packages
в установочный каталог Python
c:/Python26/lib/site-packages
будут ли работать инструменты из этого набора или надо выполнить какие-то действия по дополнительной настройке?
Извиняюсь за ламерский вопрос, я только начинаю осваивать Python
karakurt2
Почему бы просто не проверить?
Почему бы просто не проверить?
Как записывать и считывать числа с плавающей точкой в двоичном файле? Подскажите, что не так в этом примере... В файл записывается неверное число. Для формата с двойной точносьтью всё работает корректно.
Код:
[no]
# -*- coding: CP1251 -*-
import struct
filename = '16_gslib_format.txt'
x = 12
y = 1111111114.333333
fmt = '=if'
num = struct.calcsize(fmt)
print num
fp = open(filename, 'wb')
fp.write(struct.pack(fmt, x, y))
fp.close()
fp = open(filename, 'rb')
(x,z) = struct.unpack(fmt, fp.read(num))
fp.close()
# print '%10i %10i %10i' % x, y, z
print ('%10i %20f' % (x, z))
[/no]
Код:
[no]
# -*- coding: CP1251 -*-
import struct
filename = '16_gslib_format.txt'
x = 12
y = 1111111114.333333
fmt = '=if'
num = struct.calcsize(fmt)
print num
fp = open(filename, 'wb')
fp.write(struct.pack(fmt, x, y))
fp.close()
fp = open(filename, 'rb')
(x,z) = struct.unpack(fmt, fp.read(num))
fp.close()
# print '%10i %10i %10i' % x, y, z
print ('%10i %20f' % (x, z))
[/no]
Все верно, точность числа с плавающей запятой 7 десятичних знаков. Потому x у вас хранится в виде числа с плавающей запятой с двойной точностью. И при принудительном приведении типа к 32-битному числу точность теряется.
Предыдущая тема: Вопрос по HTML и MS IE Explorer6.0
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.