Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Python

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

Открыть новую тему     Написать ответ в эту тему

Adm10



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здесь обсуждается всё, что связано с использованием Python: программирование, библиотеки, ресурсы и другие вопросы

Python


Python - высокоуровневый язык программирования общего назначения с динамической типизацией и автоматическим управлением памятью, ориентированный на повышение производительности разработчика, читаемости кода и его качества, а также на обеспечение переносимости написанных на нём программ

С чего начать?
Простой, понятный и вместе с тем грамотный ресурс на русском языке: pythonworld.ru + самоучитель
Библия PEP8

Всего записей: 35 | Зарегистр. 13-10-2006 | Отправлено: 15:48 16-06-2007 | Исправлено: useretail, 21:51 22-06-2024
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ну вот... считаю себя начальным пользователем Питона...
и как маленький и отнюдь не собирающийся продолжать удавчик выскажу своё _непредвзятое_ мнение неофита...
 
Питон мне не пондра... (не надо меня гражданином и пинать)
 
по пунктам:
 
1. или я чего-то не понял или одно из двух:
что, тело функции ничем не завершено и его я должен регулировать "отступами"?
извините, откровенный маздай или лень...
я начинал с Фортрана (кто знает -- уже понял о чём я), но и сейчас freeform -- одна из его возможностей...
я что-то упустил?
 
2. к п.1...
отсутствие завершающих конструкций в других логических блоках тоже выглядит или упущением или жалкими потугами на оригинальность...
 
3. невозможность в строке поменять любой символ mystr[10] = 'a' --
мелочь, но неприятно...
 
4. все мы привыкли, что во _всех_ языках имеется простейший цикл со счётчиком...
да, да... без него можно обойтись, да, да, все языки переопределены, но привычка -- вторая натура...
 
так что прототипировать/эспериментировать/алгоритмо_отлажиивать я буду по-прежнему на Дельфи...
а в качестве "на сон грядущий" почитаю-ка Ruby...

Всего записей: 24838 | Зарегистр. 06-12-2002 | Отправлено: 14:28 28-06-2007
TheChampion

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM

Цитата:
1. или я чего-то не понял или одно из двух:
что, тело функции ничем не завершено и его я должен регулировать "отступами"?  

Так точно.  
 

Цитата:
извините, откровенный маздай или лень...

Или отличный способ избавиться от операторных скобок ({/} или, в тяжелом случае, begin/end) и повысить читабельность кода (см. "перловая каша"). Бритва Оккама!
 

Цитата:
я начинал с Фортрана (кто знает -- уже понял о чём я), но и сейчас freeform -- одна из его возможностей...  

Ну и что? В Фортране, тем не менее, операторные скобки есть.
 

Цитата:
я что-то упустил?

В небрежно написанном питоновском коде через много лет куда проще разобраться :-) Обратно см. "перловая каша".
 

Цитата:
2. к п.1...  

См. "Бритва Оккама".
 

Цитата:
невозможность в строке поменять любой символ mystr[10] = 'a'  

А как часто это надо и зачем?
 
Дело в том, что строки и кортежи в Питоне неизменяемые в целях повышения быстродействия программы. А вот списки и словари, напротив, изменяемые.
 

Цитата:
все мы привыкли, что во _всех_ языках имеется простейший цикл со счётчиком...

И кто сказал, что в Питоне их нет?

Код:
for i in xrange(10):
  print i

Что я делаю не так?
 
В отличие от "простейшего цикла со счетчиком" цикл в Питоне обладает теми же возможностями, что и в C++:

Код:
typedef std::list<int> int_list;
 
int_list l = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // Да, да, это будет только в C++0x, но я ради экономии места :-)
for(int_list::iterator i = l.begin(); i != l.end(); ++i)
  std::cout << *i << "\n";

 
А вот так выглядит в Питоне:

Код:
l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for i in l:
  print i

 

Цитата:
так что прототипировать/эспериментировать/алгоритмо_отлажиивать я буду по-прежнему на Дельфи...  

Поверьте мне, "прототипировать" != "быренько наваять пару окон".
 
И что, оно кроссплатформенно? Поддерживает, в частности, обобщенное программирование? А что насчет лямбда-функций?
 

Цитата:
а в качестве "на сон грядущий" почитаю-ка Ruby...

Расскажите, как указанные проблемы решены там.

Всего записей: 656 | Зарегистр. 25-06-2004 | Отправлено: 16:12 28-06-2007 | Исправлено: TheChampion, 16:16 28-06-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Поверьте мне, "прототипировать" != "быренько наваять пару окон".  

пока не смог вам достойно набросать ответ...
скажу лишь одно:
пока я начинал на Фортране, оператора "!=" ещё не было, ивиняюсь, если вы родились позже... (справка: С, третья версия "пошла в 1978 году) он только что собирался быть С...
а в остальном... прекрасная маркиза...
 
лично для меня и моих аспирантов, псевдокод == коду на паскале, ака/аля Дельфи
так что об их практической значимости не будем...

Всего записей: 24838 | Зарегистр. 06-12-2002 | Отправлено: 17:51 28-06-2007 | Исправлено: akaGM, 18:32 28-06-2007
LMZiushka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
извините за оффтоп,
НО, спасибо за тему, честно, давно искал где почитать про то, что же есть и на что способен этот самый Питон.
 
ПС: извините за второй офф, но здесь видео уроки по Питону

Всего записей: 21 | Зарегистр. 28-06-2007 | Отправлено: 19:24 28-06-2007
TheChampion

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LMZiushka
http://www.python.ru/ --- зело рекомендую. Особенно книжку Россума (автор языка), Дрейка и Откидача "Язык программирования Python" (там есть PDF). Я по ней учился. Ну и по Python Reference Guide :-)

Всего записей: 656 | Зарегистр. 25-06-2004 | Отправлено: 22:26 28-06-2007
LMZiushka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
строго по теме: есть очень хороший framework написанный на Питоне, называется Django ( вот ссылка: http://www.djangoproject.com/ )
 

Цитата:
http://www.python.ru/ --- зело рекомендую. Особенно книжку Россума (автор языка), Дрейка и Откидача "Язык программирования Python" (там есть PDF). Я по ней учился. Ну и по Python Reference Guide

спасибо, скачал, читаю, просвещаюсь =)

Всего записей: 21 | Зарегистр. 28-06-2007 | Отправлено: 21:57 01-07-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TheChampion

Цитата:
Ну и что? В Фортране, тем не менее, операторные скобки есть.  

так я-то как раз _за_ них, недопонятки...
 
лично у вас прошу прощения за излишне резкий тон, так как мне он таковым показался...
о своих изысканиях и появившихся [не]пристрастиях сообщу после зятяжного переезда...
 
оффтоп

Всего записей: 24838 | Зарегистр. 06-12-2002 | Отправлено: 21:57 03-07-2007
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
взято из русской вики

Цитата:
 
Операторные скобки — скобки или команды, определяющие в языке программирования блок команд, воспринимаемый как единое целое, как одна команда.
 
Примеры
    * Pascal: «begin» и «end».
    * Си, Java, PHP, Perl: «{» и «}».
    * Python: скобок не требуется, блоки отделяются отступами.
    * Руби: может использоваться «do» и «end», «{» и «}» а также различные комбинации операторов с переводом строки и «end»
 

 
язык строго (ну почти что) следует принципам ООП (наследние ведёт от smalltalk)
пример объявления функции (не метода)
def - ключевое слово для объявления функции
  def myfunc
  puts "Hello world"
  end
 
ну итд, в общем, наверное, не для этого топика...

Всего записей: 24838 | Зарегистр. 06-12-2002 | Отправлено: 23:01 04-07-2007
Sauron_zombie



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прошу прощения, решил не создавать новой темы, а спросить здесь.  
Вопрос ламерский, т.к. программированием не занимался. Как сделать так, чтобы русские буквы в интерпретаторе Python (как командная строка, так и IDLE (Python GUI)) были русскими. Поясню:

Код:
IDLE 1.1.3      
>>> 'Привет'
'\xcf\xf0\xe8\xe2\xe5\xf2'
>>>
Что-то с кодировкой, но никак не въеду. Делал:  

Код:
# -*- coding: koi8-r -*-  
но не помогло…
Может, кто просветит, а то нужда заставила учить язык для web, и я выбрал Питон.  
З.Ы. Может нужно было начать с PHP или Perl?
Спасибо!  
 

Всего записей: 536 | Зарегистр. 31-01-2006 | Отправлено: 14:10 20-07-2007 | Исправлено: Sauron_zombie, 14:13 20-07-2007
WiseAlex



Софтовых дел М...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sauron_zombie
может подойдет  
print 'привет'

Всего записей: 1001 | Зарегистр. 02-03-2003 | Отправлено: 15:34 20-07-2007
Sauron_zombie



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да print нормально выводит.  
Я со списками не могу работать:

Код:
IDLE 1.1.3      
>>> a=['один', 'два', 'три']
>>> a
['\xee\xe4\xe8\xed', '\xe4\xe2\xe0', '\xf2\xf0\xe8']
>>> a[0]
'\xee\xe4\xe8\xed'
>>>
 

Вот и прошу помощи...

Всего записей: 536 | Зарегистр. 31-01-2006 | Отправлено: 17:34 20-07-2007
TheChampion

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sauron_zombie

Цитата:
Я со списками не могу работать:

Это в смысле?

Код:
>>> a = ["Один", "Два", "Три"]
>>> a
['\xce\xe4\xe8\xed', '\xc4\xe2\xe0', '\xd2\xf0\xe8']
>>> if a[0] == "Один": print "Hello!"
 
Hello!


Всего записей: 656 | Зарегистр. 25-06-2004 | Отправлено: 19:39 22-07-2007
Sauron_zombie



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TheChampion
Т.е., вывод такой: оператор print... Хорошо. Спасибо!

Всего записей: 536 | Зарегистр. 31-01-2006 | Отправлено: 18:41 04-08-2007
dvs



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Собственно интересует, какие из известных проэктов были созданы на САБЖе и стоит ли тратить время на изучение этого языка?

http://youtube.com например


----------
Python developer                    

Всего записей: 333 | Зарегистр. 18-05-2001 | Отправлено: 20:04 20-09-2007
vsoly



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Про Blender может слыхали, хотя этот раздел читают програмисты а не художники. Blender это серьёзный 3D пакет программ для создания игр, мультфильмов и прочей 3D продукции.
Так этот Blender полностью написан на Python. Есть версии как для Windows, так и для остальных ОСей. Это и есть одно большое достоинство Python-а, что написал прогу на чистом Python-е потом Copy>Paste и запустил под Linux.

Всего записей: 4 | Зарегистр. 07-09-2006 | Отправлено: 21:15 04-10-2007
TheChampion

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Поправочка: Copy-Paste не нужен. Это же Питон.

Всего записей: 656 | Зарегистр. 25-06-2004 | Отправлено: 22:24 04-10-2007
WiseAlex



Софтовых дел М...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
есть на python 2 серьезных и активно развивающихся проекта: Mercurial и Bazaar
из-за Bazaar python стал у нас в конторе стандартом де-факто для написания скриптов, кодогенераторов и прочих впомогательных вещей.
Теперь изучаем его более подробно
---
Кстати кто-то работал с pyDev как впечатления?

Всего записей: 1001 | Зарегистр. 02-03-2003 | Отправлено: 13:51 06-03-2008
dmka



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WiseAlex

Цитата:
Mercurial и Bazaar

И как оно в реальной жизни? Сколько человек у вас работают над одним проектом? Есть где-то сравнение, например, с subversion?  Из заметных преимуществ очевидно только наличие промежуточных репозиториев, хотя я еще не до конца уверен что это добро
 
Офтоп однако, может ветку создать?

Всего записей: 948 | Зарегистр. 23-04-2003 | Отправлено: 16:21 06-03-2008
dvs



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
(Язык программирования Python (Питон, Пайтон)) http://forum.ru-board.com/topic.cgi?forum=31&topic=1537

----------
Python developer                    

Всего записей: 333 | Зарегистр. 18-05-2001 | Отправлено: 13:26 12-04-2008
xvector

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
игра EVE-ONLINE на питоне написана и серверная часть и клиентская.
_http://www.eve-online.com/faq/faq_07.asp
 
космос в еве нарисован, наверно, сейчас самые лучший, лучшую картинку делает только хабл
можно скрины заценить тут :
_http://www.eve-online.com/screenshots/collection.asp?col=05122007&n=8
 
только там используется специальная версия питона Stackless Python
_http://www.stackless.com/

Всего записей: 39 | Зарегистр. 20-11-2004 | Отправлено: 02:04 22-11-2008
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Python


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru