|

Monthy Python
Ramhak konung@ic.ru
Xakep, номер #017, стр. 017-026-3
>>> b = [a, 1, a]
>>> b
[['1', 2, '34', 'Так добавляют в список'], 1, ['1', 2, '34', 'Так добавляют в список']]
Указанный мною выше тип данных "cловари" - аналог "хешей" (то есть это, проще говоря, синонимы) в Perl. Это ассоциативные массивы, то есть массивы, доступ к элементам которых происходит по каким-либо произвольным строкам. Можно рассматривать их как биективные отображения, в которых для каждого элемента можно всегда найти только один соответствующий. Например, как номер сиденья в n-ом ряду на билете в кинотеатр - достанется только одному и существует только один, хотя я знаю, что ты всегда бершь места на последнем ряду (;:
>>> phones = {'Вася': 9400000, 'Маша': 9400001}
>>> phones['Guido'] = 9090002
>>> phones
{'Вася': 9400000, 'Маша': 9400001, 'Guido': 9090002}
>>> phones['Вася']
9400000
>>> del phones['Вася']
>>> phones
{'Маша': 9400001, 'Guido': 9090002}
>>> phones.keys()
['Маша', 'Guido']
>>> phones.has_key('Guido')
1
Еще один тип данных - кортежи (tuples). Они подобны строкам (потому что они также неизменны - immutable) в Python`е, только их элементами являются не только символы, но и любые данные. Кортежи являются расширением постоянно развивающегося языка и созданы они в первую очередь, чтобы облегчить структурирование информации, представленной в сложных форматах. Например, в записях базы данных или парах координат (x, y...) или... да уйму чего еще! Вот как записывают кортежи:
>> empty = ()
>>> single = 'гыгыгы',
>>> len(empty)
0
>>> len(single)
1
>>> single
('гыгыгы',)
То есть элементы кортежа записываются в круглых скобках и разделяются запятой. Стоит обратить пристальное внимание на наличие запятой даже после одного элемента. Надо признать, кортежи действительно удобны в некоторых случаях. Но они так же, как и строки, обладают свойством immutable. :-(
Пример
Сейчас модно писать всякие CGI-скрипты для вебстраничек - счетчики, гостевые книги, форумы, разные приколы, тесты и т.д. Изначально все эти скрипты ориентированы на работу со строками (тот же HTML-формат для вебстраниц записывается исключительно в текстовом "plain", т.е. плоском виде). И Python подходит для этого как нельзя лучше. Чтобы не быть голословным, я могу рассказать о том, как написать простейший скрипт - счетчик. Вызывать его, скажем, будем так:
http://www.mycoolpage.com/cgi-bin/counter.py?url=index.htm
где counter.py - это наш скрипт, который увеличит значение счетчика и запишет его в какой-нибудь файл. А параметром ему (через ?url=...) передается имя html-файла, в котором скрипт поменяет строчки "%%%counter%%%" на текущее значение счетчика. Выглядит неплохо. Приступим.
Первой строчкой в нем должна быть:
#!/usr/local/bin/python
где usr/local/bin нужно исправить на действительный путь к питону. Это обязательное условие. Иначе ничего не выйдет - система просто не поймет, что это программа для питона. (Вообще, все, что начинается со знака "#", считается комментарием. Ну, кроме вот этой первой строчки.).
Назад на стр. 017-026-2 Содержание Вперед на стр. 017-026-4
|