TG Telegram Group & Channel
Библиотека Python разработчика | Книги по питону | United States America (US)
Create: Update:

Одной из самых непоследовательных частей синтаксиса Python являются литералы кортежей.

По сути, чтобы создать кортеж, вы просто пишете значения, разделенные запятыми: 1, 2, 3. Пока что все понятно. А как насчет кортежа, содержащего только один элемент? Вы просто добавляете завершающую запятую к единственному значению: 1,. Это выглядит несколько некрасиво и может быть подвержено ошибкам, но логика понятна.

А как насчет пустого кортежа? Это просто запятая? Нет, это (). Значит ли это, что круглые скобки создают кортеж так же, как и запятые? Нет, это не так. (4) — это не кортеж, это просто 4.

Пример:


a = [
(1, 2, 3),
(1, 2),
(1),
(),
]

[type(x) for x in a]
# Результат: [tuple, tuple, int, tuple]


Чтобы все стало еще более запутанным, литералы кортежей часто требуют дополнительных круглых скобок. Если вы хотите, чтобы кортеж был единственным аргументом функции, то f(1, 2, 3) не сработает по очевидной причине — вместо этого нужно написать f((1, 2, 3)).

👉 @BookPython

Одной из самых непоследовательных частей синтаксиса Python являются литералы кортежей.

По сути, чтобы создать кортеж, вы просто пишете значения, разделенные запятыми: 1, 2, 3. Пока что все понятно. А как насчет кортежа, содержащего только один элемент? Вы просто добавляете завершающую запятую к единственному значению: 1,. Это выглядит несколько некрасиво и может быть подвержено ошибкам, но логика понятна.

А как насчет пустого кортежа? Это просто запятая? Нет, это (). Значит ли это, что круглые скобки создают кортеж так же, как и запятые? Нет, это не так. (4) — это не кортеж, это просто 4.

Пример:

a = [
(1, 2, 3),
(1, 2),
(1),
(),
]

[type(x) for x in a]
# Результат: [tuple, tuple, int, tuple]


Чтобы все стало еще более запутанным, литералы кортежей часто требуют дополнительных круглых скобок. Если вы хотите, чтобы кортеж был единственным аргументом функции, то f(1, 2, 3) не сработает по очевидной причине — вместо этого нужно написать f((1, 2, 3)).

👉 @BookPython
👍6


>>Click here to continue<<

Библиотека Python разработчика | Книги по питону






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)