Показаны сообщения с ярлыком Типы данных. Показать все сообщения
Показаны сообщения с ярлыком Типы данных. Показать все сообщения

15 апреля 2013 г.

Понимание генераторов множеств и словарей

Сейчас 2 часа  ночи, я ничего не понимаю, что относится к программированию на Python, но пишу этот пост... надеюсь кому то он поможет.


>>> {x * x for x in range(10)}         # Генератор
{0, 1, 4, 81, 64, 9, 16, 49, 25, 36}

>>> set(x * x for x in range(10)) # Генератор и конструктор типа
{0, 1, 4, 81, 64, 9, 16, 49, 25, 36}

>>> {x: x * x for x in range(10)}
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

>>> dict((x, x * x) for x in range(10))
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

11 апреля 2013 г.

Создание собственных версий функций zip(...) и map(None, ...)


В предыдущих постах мы создавали якобы свои функции zip и map . Но это не совсем то, что нам нужно, так как создавая одну из них мы использовали вторую - которая встроена в язык программирования Python.

Поэтому в этом посте мы это полностью исправим. Кстати в разных версиях, map работает по разному, вот некоторые примеры для Python 2.x и Python 3.0.


C:\misc> c:\python26\python
>>> map(None, [1, 2, 3], [2, 3, 4, 5])
[(1, 2), (2, 3), (3, 4), (None, 5)]
>>> map(None, ‘abc’, ‘xyz123’)
[(‘a’, ‘x’), (‘b’, ‘y’), (‘c’, ‘z’), (None, ‘1’), (None, ‘2’), (None, ‘3’)]

8 октября 2012 г.

Другие инструменты для работы с файлами



Другие инструменты для работы с файлами

Существуют более сложные инструменты для работы с файлами, более того, существуют и другие инструменты. Функция seek переустанавливает текущую позицию в файле (для следующей операции чтения или записи), функция flush принудительно выталкивает содержимое выходных буферов на диск (по умолчанию файлы всегда буферизуются) и так далее.

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

Стандартные потоки ввода-вывода
Объекты уже открытых файлов в модуле sys, такие как sys.stdout.

Дескрипторы файлов в модуле os
Целочисленные дескрипторы файлов, обеспечивающие поддержку низко-
уровневых операций, таких как блокировка файлов.

Сокеты, каналы и очереди (FIFO)
Объекты, по своим характеристикам напоминающие файлы, используемые 
для синхронизации процессов или организации взаимодействий по сети. 

Файлы с доступом по ключу, известные как «хранилища» («shelves»)
Используются для хранения объектов языка Python по ключу. 

Потоки командной оболочки
Такие инструменты, как os.popen и subprocess.Popen, которые поддерживаеют возможность запуска дочерних процессов и выполнения операций с их стандартными потоками ввода-вывода.

6 сентября 2012 г.

Строки, углубляемся

Строки - упорядоченные последовательности символов а так же, встроенный объект в языке Python.

В данном уроке углубимся в их изучении.

30 августа 2012 г.

Данные в языке Python

   Данные в языке Python представлены в форме объектов.
Программы на языке Python можно разложить на такие составляющие, как модули, инструкции, выражения и объекты, при этом:

  1. Программы делятся на модули.
  2. Модули содержат инструкции.
  3. Инструкции состоят из выражений.
  4. Выражения создают и обрабатывают объекты.
Типы данных в языке Python (табл. 1.1):