четверг, 13 декабря 2012 г.

Преобразование типов в Python

В Python имеются такие типы данных:
  • Числа
  • Строки
  • Кортежи
  • Списки
  • Словари
  • Множества
    Для преобразования из числа в строку  используют функцию str(). 
>>> x=23
>>>x=str(x)
>>>print(x)
>>>23
    Если мы не использовали бы функцию str(), то при обьединении строки с числом, получили ошибку
>>>v=x+'hello'
>>>print(v)
>>>23hello
Не используя str():
>>> m=45
>>>a=m+'hello' TypeError: Can't convert 'int' object to str implicitly
Что означает невозможно число вставить в строку. 
    Кортежиэто упорядоченная, неизменяемая коллекция объектов произвольных типов, поддерживающая произвольное число уровней вложенности.Форма записи выглядит следующим образом:
>>>t=(23,'retro','mir')
     Для доступа к каждому обьекту кортежа используются [] в которых указывается номер обьекта в кортеже.
>>>t[1]
>>>retro
     Изменить обьект в кортеже не возможно! То есть кортеж это список констант, он быстрее чем обычные списки. Также в нем не возможно удалять обьекты. Таким образом кортеж идеально подходит для хранения данных, к ним легко добраться и в тоже время не возможно изменить либо удалить)
 Списки представляют из себя коллекцию элементов, которые можно удалять, изменять, создавать какую угодно вложенность, одни плюсы) Все элементы в списке упорядочены в отличии от словарей , доступ к элементам которой предоставляется не с помощью смещения, а с помощью ключа.
Здесь я лишь внесу некоторые дополнения и замечания по использованию словарей:
  • операции над последовательностями неприменимы к словарям т.к. словари — это не последовательность, а отображение.
  • Ключи не обязательно должны быть строками. В роли ключей могут выступать любые неизменяемые объекты. Т.е. если рассматривать встроенные типы данных, то — это числа, строки и кортежи. Ясно, что при использования чисел, словарь превращается в подобие списка, однако, остаётся при этом неупорядоченным. Используя в качестве ключа кортежи, появляется возможность использовать составные ключи. Экземпляры пользовательских классов так же могут выступать в качестве ключей при условии, что они реализуют определённые методы указывающие интерпретатору на то, что объект является неизменяемым.
  

Комментариев нет: