Урок 5. Типы переменных в Python

Типы переменных в Python это не что иное, как зарезервированные ячейки памяти для хранения значений. Это означает, что при создании переменной вы резервируете некоторое место в памяти.

В зависимости от типа данных переменной интерпретатор выделяет память и решает, что можно сохранить в зарезервированной памяти. Следовательно, назначая переменным разные типы данных, вы можете хранить в этих переменных целые числа, десятичные дроби или символы.

Как указать значение переменной в Python

Типа переменных в Питон не нуждаются в явном объявлении для резервирования места в памяти. Объявление происходит автоматически, когда вы присваиваете значение переменной. Знак равенства (=) используется для присвоения типа переменным.

Операнд слева от оператора = – это имя переменной, а операнд справа от оператора = – это значение, хранящееся в переменной. Например, как объявить тип переменной:

#!/usr/bin/python

counter = 100          # Присвоение целого числа
miles   = 1000.0       # С плавающей точкой
name    = "Джон"       # Строка

print counter
print miles
print name

Здесь 100, 1000.0 и «Джон» – это значения, присвоенные переменным counter, miles и name соответственно. Это дает следующий результат:

100
1000.0
Джон

Множественное присвоение

Python позволяет назначать одно значение нескольким переменным одновременно. Это множественное присвоение. Например:

а = b = с = 1

Здесь создается целочисленный объект со значением 1, и все три переменные назначаются в одну и ту же ячейку памяти. Вы также можете назначить несколько объектов нескольким переменным. Например:

a, b, c = 1,2, «john»

Здесь два целочисленных объекта со значениями 1 и 2 присвоены переменным a и b соответственно, а один строковый объект со значением «john» назначен переменной c.

Стандартные типы данных

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

Python имеет пять стандартных типов данных:

  • Числа
  • Строка
  • Список
  • Кортеж
  • Словарь

Числа Python

Числовые типы данных хранят числовые значения. Числовые объекты создаются, когда вы присваиваете им значение. Например:

var1 = 1
var2 = 10

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

del var1[, var2[, var3[...., varN]]]]

Вы можете удалить один объект или несколько объектов, используя оператор del. Например:

del var
del var_a, var_b

Типы числовых переменных Python:

  • int (целые числа со знаком)
  • long (длинные целые числа, они также могут быть представлены в восьмеричном и шестнадцатеричном формате)
  • float (реальные значения с плавающей точкой)
  • complex (комплексные числа)

Примеры

Вот несколько примеров числовых данных:

Примеры числовых данных

int

long

float

complex

10

51924361L

0.0

3.14j

100

-0x19323L

15.20

45.j

-786

0122L

-21.9

9.322e-36j

080

0xDEFABCECBDAECBFBAEl

32.3+e18

.876j

-0490

535633629843L

-90.

-.6545+0J

-0x260

-052318172735L

-32.54e100

3e+26J

0x69

-4721885298529L

70.2-E12

4.53e-7j

  • Python позволяет использовать строчную букву l для long, но рекомендуется использовать только верхний регистр L, чтобы избежать путаницы с числом 1. Python отображает длинные целые числа с прописной L.
  • Комплексное число состоит из упорядоченной пары реальных чисел с плавающей запятой, обозначенных как x + yj, где x и y - реальные числа, а j - мнимая единица.

Типы строк в Python

Строки в Python идентифицируются как непрерывный набор символов, представленных в кавычках. Python позволяет использовать пары одинарных или двойных кавычек. Подмножества строк могут быть взяты с помощью оператора вырезки ([] и [:]) с индексами, начинающимися с 0 в начале строки и -1 в конце.

Знак плюс (+) – это оператор конкатенации строк, а звездочка (*) – оператор повторения. Например:

#!/usr/bin/python

str = Привет, мир!'

print str          # Выводит полную строку
print str[0]       # Выводит первый символ строки
print str[2:5]     # Выводит символы с 3-го по 5-й
print str[2:]      # Выводит строку, начиная с 3-го символа
print str * 2      # Выводит строку два раза
print str + "ТЕСТ" # Выводит составную строку

Это дает следующий результат:

Привет, мир!
П
иве
ивет, мир!
Привет, мир! Привет, мир!
Привет, мир!ТЕСТ

Списки

Списки Python являются наиболее универсальными из составных типов данных Python. Список содержит элементы, разделенные запятыми и заключенные в квадратные скобки ([]). В некоторой степени списки похожи на массивы в C. Различие между ними состоит в том, что все элементы, принадлежащие списку, могут иметь разный тип данных.

К значениям, хранящимся в списке, можно получить доступ с помощью оператора вырезки ([] и [:]) с индексами, начинающимися с 0 в начале списка и продвигающимися до конца -1. Знак плюс (+) ч это оператор конкатенации списков, а звездочка (*) – оператор повторения. Например:

#!/usr/bin/python

list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']

print list          # Выводит полный список
print list[0]       # Выводит первый элемент списка
print list[1:3]     # Выводит элементы со 2-го по 3-й
print list[2:]      # Выводит элементы, начиная с 3-го элемента
print tinylist * 2  # Выводит список два раза
print list + tinylist # Выводит составные списки

Это дает следующий результат:

[abcd, 786, 2.23, john, 70.2]
abcd
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
[abcd, 786, 2.23, john, 70.2, 123, john]

Кортежи Python

Кортеж – это другой тип данных последовательности, похожий на список. Кортеж состоит из ряда значений, разделенных запятыми. Однако, в отличие от списков, кортежи заключаются в круглые скобки. Основные различия между списками и кортежами заключаются в следующем: списки заключаются в квадратные скобки ([]), их элементы и размер могут быть изменены, а кортежи заключаются в круглые скобки (()) и данные внутри не могут быть обновлены. Кортежи можно рассматривать как списки только для чтения. Например:

#!/usr/bin/python

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
tinytuple = (123, 'john')

print tuple               # Выводит полный кортеж
print tuple[0]            # Выводит первый элемент кортежа
print tuple[1:3]          # Выводит элементы кортежа со 2-го по 3-й
print tuple[2:]           # Выводит элементы кортежа, начиная с 3-го элемента
print tinytuple * 2       # Выводит содержимое кортежа дважды
print tuple + tinytuple   # Выводит составные кортежи

Это дает следующий результат:

('abcd', 786, 2.23, 'john', 70.2)
abcd
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.2, 123, 'john')

Следующий код неверный для кортежа, потому что мы попытались обновить значения кортежа, что недопустимо. Аналогичный случай возможен со списками:

#!/usr/bin/python

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
list = [ 'abcd', 786 , 2.23, 'john', 70.2  ]
tuple[2] = 1000    # Неверный синтаксис с кортежем
list[2] = 1000     # Действительный синтаксис со списком

Словарь

Словари Python представляют собой своего рода хеш-таблицы. Они работают как ассоциативные массивы или хэши в Perl, и состоят из пар ключ-значение. Ключ словаря может быть практически любым типом Python, но обычно это числа или строки. Значения, с другой стороны, могут быть любым произвольным объектом Python.

Словари заключаются в фигурные скобки ({}), а значения могут быть присвоены и доступны с помощью квадратных скобок ([]). Например:

#!/usr/bin/python

dict = {}
dict['один'] = "Это один"
dict[2]     = "Это два"

tinydict = {'имя': 'john','код':6734, 'отдел': 'продажи'}


print dict['one']       # Выводит значение для ключа 'один'
print dict[2]           # Выводит значение для ключа 2
print tinydict          # Выводит весь словарь
print tinydict.keys()   # Выводит все ключи
print tinydict.values() # Выводит все значения

Это дает следующий результат:

Это один
Это два
{'отдел': 'продажи', 'код': 6734, 'имя': 'john'}
["отдел", "код", "имя"]
['продажи', 6734, 'john']

В словарях отсутствует понятие порядка элементов. Неверно говорить, что элементы расположены «не по порядку»; они просто не упорядочены.

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

Иногда вам может потребоваться выполнить преобразование между встроенными типами данных питон. Для преобразования между типами вы просто используете имя типа как функцию.

Есть несколько встроенных функций для выполнения преобразования из одного типа данных в другой. Эти функции возвращают новый объект, представляющий преобразованное значение.

п/п

Функция и описание

1

int(x [,base])
Преобразует x в целое число. base указывает основание, если x - строка.

2

long(x [,base] )
Преобразует x в длинное целое число. base указывает основание, если x - строка.

3

float(x)
Преобразует x в число с плавающей запятой.

4

complex(real [,imag])
Создает комплексное число.

5

str(x)
Преобразует объект x в строковое представление.

6

repr(x)
Преобразует объект x в строку выражения.

7

eval(str)
Оценивает строку и возвращает объект.

8

tuple(s)
Преобразует s в кортеж.

9

list(s)
Преобразует s в список.

10

set(s)
Преобразует s в набор.

11

dict(d)
Создает словарь. d должен быть последовательностью (ключ, значение) кортежей.

12

frozenset(s)
Преобразует s в замороженный набор.

13

chr(x)
Преобразует целое число в символ.

14

unichr(x)
Преобразует целое число в символ Юникода.

15

ord(x)
Преобразует одиночный символ в его целочисленное значение.

16

hex(x)
Преобразует целое число в шестнадцатеричную строку.

17

oct(x)
Преобразует целое число в восьмеричную строку.

Поделитесь:

О сайте

Все материалы сайта proglang.su являются результатом труда его авторов. Копирование материалов в некоммерческих целях без указания источника в виде прямой ссылки на сайт proglang.su запрещено. Использование материалов в коммерческих целях разрешено только с письменного согласия автора. Нарушение авторских прав преследуется по закону. Мы это делаем, чтобы защитить плоды своих трудов от воровства. © 2014-2019

Присоединяйтесь


Обратная связь