Главная » Статьи » Python

Тип dict и file

Тип dict

Словарь (хэш, ассоциативный массив) - это изменчивая структура данных для хранения пар ключ-значение, где значение однозначно определяется ключом. В качестве ключа может выступать неизменчивый тип данных (число, строка, кортеж и т.п.). Порядок пар ключ-значение произволен.

Ниже приведен литерал для словаря и пример работы со словарем:

  1. d = {1: 'one', 2: 'two', 3: 'three', 4: 'four'}
  2. d0 = {0: 'zero'}
  3. print d[1] # берется значение по ключу
  4. d[0] = 0 # присваивается значение по ключу
  5. del d[0] # удаляется пара ключ-значение с данным ключом
  6. print d
  7. for key, val in d.items(): # цикл по всему словарю
  8.     print key, val
  9. for key in d.keys(): # цикл по ключам словаря
  10.     print key, d[key]
  11. for val in d.values(): # цикл по значениям словаря
  12.     print val 16
  13. d.update(d0) # пополняется словарь из другого
  14. print len(d) # количество пар в словаре

Тип file

Объекты этого типа предназначены для работы с внешними данными. В простом случае - это файл на диске. Файловые объекты должны поддерживать основные методы: read(), write(), readline(), readlines(), seek(), tell(), close() и т.п.

Следующий пример показывает копирование файла:

  1. f1 = open("file1.txt", "r")
  2. f2 = open("file2.txt", "w")
  3. for line in f1.readlines():
  4.     f2.write(line)
  5. f2.close()
  6. f1.close()

Стоит заметить, что кроме собственно файлов в Python используются и файлоподобные объекты. В очень многих функциях просто неважно, передан ли ей объект типа file или другого типа, если он имеет все те же методы (и в том же смысле). Например, копирование содержимого по ссылке (URL) в файл file2.txt можно достигнуть, если заменить первую строку на:

  1. import urllib
  2. f1 = urllib.urlopen("http://python.onego.ru")

О модулях, классах, объектах и функциях будет говориться на других лекциях.

На Python написаны очень хорошие программы, в том числе и Blender3D - это трехмерный редактор. Хорошо освоив его вы можете построить модели, похожие на модели игры saints row.


Категория: Python | Добавил: Шаке (05.03.2012)
Просмотров: 1080 | Комментарии: 1 | Теги: Copy, python, urllib, URL, file, urllib.urlopen, Import, dict
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
/>meta http-equiv=