Переменные — это не что иное, как зарезервированные области памяти для хранения значений. Это означает, что когда вы создаете переменную, вы резервируете некоторое пространство в памяти.
На основе типа данных переменной интерпретатор выделяет память и решает, что можно сохранить в зарезервированной памяти. Поэтому, назначая переменным разные типы данных, вы можете хранить целые числа, десятичные числа или символы в этих переменных.
Присвоение значений переменным
Переменные Python не требуют явного объявления для резервирования места в памяти. Объявление происходит автоматически, когда вы присваиваете значение переменной. Знак равенства (=) используется для присвоения значений переменным.
Операнд слева от оператора = — это имя переменной, а операнд справа от оператора = — это значение, хранящееся в переменной. Например —
#!/usr/bin/python counter = 100 # An integer assignment miles = 1000.0 # A floating point name = "John" # A string print counter print miles print name
Здесь 100, 1000.0 и «Джон» — это значения, присвоенные переменным счетчика , миль и имени соответственно. Это дает следующий результат —
100 1000.0 John
Множественное назначение
Python позволяет назначать одно значение нескольким переменным одновременно. Например —
a = b = c = 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 (реальные значения с плавающей точкой)
- комплекс (комплексные числа)
Примеры
Вот несколько примеров чисел —
ИНТ | долго | поплавок | сложный |
---|---|---|---|
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 с длинными, но рекомендуется использовать только заглавные буквы L, чтобы избежать путаницы с числом 1. Python отображает длинные целые числа с заглавными буквами L.
-
Комплексное число состоит из упорядоченной пары вещественных чисел с плавающей точкой, обозначаемых x + yj, где x и y — действительные числа, а j — мнимая единица.
Python позволяет использовать строчные буквы l с длинными, но рекомендуется использовать только заглавные буквы L, чтобы избежать путаницы с числом 1. Python отображает длинные целые числа с заглавными буквами L.
Комплексное число состоит из упорядоченной пары вещественных чисел с плавающей точкой, обозначаемых x + yj, где x и y — действительные числа, а j — мнимая единица.
Python Strings
Строки в Python идентифицируются как непрерывный набор символов, представленных в кавычках. Python допускает использование пар одинарных или двойных кавычек. Подмножества строк могут быть получены с использованием оператора среза ([] и [:]) с индексами, начинающимися с 0 в начале строки и проходящими их от -1 в конце.
Знак плюс (+) — это оператор объединения строк, а звездочка (*) — оператор повторения. Например —
#!/usr/bin/python str = 'Hello World!' print str # Prints complete string print str[0] # Prints first character of the string print str[2:5] # Prints characters starting from 3rd to 5th print str[2:] # Prints string starting from 3rd character print str * 2 # Prints string two times print str + "TEST" # Prints concatenated string
Это даст следующий результат —
Hello World! H llo llo World! Hello World!Hello World! Hello World!TEST
Списки Python
Списки являются наиболее универсальными из составных типов данных Python. Список содержит элементы, разделенные запятыми и заключенные в квадратные скобки ([]). В некоторой степени списки похожи на массивы в C. Одно из различий между ними состоит в том, что все элементы, принадлежащие списку, могут иметь разные типы данных.
Доступ к значениям, хранящимся в списке, можно получить с помощью оператора слайса ([] и [:]), индексы которого начинаются с 0 в начале списка и заканчиваются -1. Знак плюс (+) является оператором объединения списков, а звездочка (*) — оператором повторения. Например —
#!/usr/bin/python list = [ 'abcd', 786 , 2.23, 'john', 70.2 ] tinylist = [123, 'john'] print list # Prints complete list print list[0] # Prints first element of the list print list[1:3] # Prints elements starting from 2nd till 3rd print list[2:] # Prints elements starting from 3rd element print tinylist * 2 # Prints list two times print list + tinylist # Prints concatenated lists
Это дает следующий результат —
['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 Tuples
Кортеж — это другой тип данных последовательности, аналогичный списку. Кортеж состоит из нескольких значений, разделенных запятыми. В отличие от списков, однако, кортежи заключены в круглые скобки.
Основные различия между списками и кортежами: списки заключены в квадратные скобки ([]), их элементы и размер можно изменить, а кортежи заключить в скобки (()) и не могут быть обновлены. Кортежи можно рассматривать как списки только для чтения . Например —
#!/usr/bin/python tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 ) tinytuple = (123, 'john') print tuple # Prints complete list print tuple[0] # Prints first element of the list print tuple[1:3] # Prints elements starting from 2nd till 3rd print tuple[2:] # Prints elements starting from 3rd element print tinytuple * 2 # Prints list two times print tuple + tinytuple # Prints concatenated lists
Это дает следующий результат —
('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 # Invalid syntax with tuple list[2] = 1000 # Valid syntax with list
Словарь Python
Словари Python являются разновидностью хеш-таблиц. Они работают как ассоциативные массивы или хэши, найденные в Perl, и состоят из пар ключ-значение. Ключ словаря может быть практически любого типа Python, но обычно это числа или строки. Значения, с другой стороны, могут быть любым произвольным объектом Python.
Словари заключены в фигурные скобки ({}), а значения могут быть назначены и доступны с помощью квадратных скобок ([]). Например —
#!/usr/bin/python dict = {} dict['one'] = "This is one" dict[2] = "This is two" tinydict = {'name': 'john','code':6734, 'dept': 'sales'} print dict['one'] # Prints value for 'one' key print dict[2] # Prints value for 2 key print tinydict # Prints complete dictionary print tinydict.keys() # Prints all the keys print tinydict.values() # Prints all the values
Это дает следующий результат —
This is one This is two {'dept': 'sales', 'code': 6734, 'name': 'john'} ['dept', 'code', 'name'] ['sales', 6734, 'john']
Словари не имеют понятия порядка среди элементов. Неверно говорить, что элементы «вышли из строя»; они просто неупорядочены.
Преобразование типов данных
Иногда вам может потребоваться выполнить преобразования между встроенными типами. Для преобразования между типами вы просто используете имя типа в качестве функции.
Есть несколько встроенных функций для выполнения преобразования из одного типа данных в другой. Эти функции возвращают новый объект, представляющий преобразованное значение.
int (x [, base])
Преобразует х в целое число. base указывает базу, если x является строкой.
длинный (x [, base])
Преобразует x в длинное целое. base указывает базу, если x является строкой.
Поплавок (х)
Преобразует x в число с плавающей точкой.
сложный (настоящий [, imag])
Создает комплексное число.
ул (х)
Преобразует объект x в строковое представление.
магнезии (х)
Преобразует объект x в строку выражения.
Eval (ул)
Оценивает строку и возвращает объект.
набор (ы)
Преобразует s в кортеж.
(ена)
Преобразует s в список.
набор (ы)
Преобразует s в набор.
ДИКТ (д)
Создает словарь. d должен быть последовательностью (ключ, значение) кортежей.
frozenset (ы)
Преобразует s в замороженный набор.
CHR (х)
Преобразует целое число в символ.
unichr (х)
Преобразует целое число в символ Unicode.
Ord (х)
Преобразует один символ в его целочисленное значение.
гекс (х)
Преобразует целое число в шестнадцатеричную строку.
Октябрь (х)
Преобразует целое число в восьмеричную строку.