I'll start the morning today with some tea instead of ☕, hands on code now. Have a lot to do but want to take some time during the week to try out the most recent alpha version of #Tuple for Linux. We'll see how well it works for me under #Ubuntu 24.04 LTS (yes, I'm a boring rails dev who doesn't use Arch or #Omarchy)

Python для начинающих: () или []? Ответ, который изменит ваш код

Положа руку на сердце, давайте признаемся: когда вы только начинали учить Python, вам наверняка на первом же занятии вам сказали: «Списки ( list ) — изменяемые, а кортежи ( tuple ) — нет. Запомнили? Молодцы». И большинство из нас кивнуло и пошло дальше. Казалось бы, всё просто: если данные могут меняться — берём квадратные скобки [] , если это константа — круглые () . Задача решена. А что, если я скажу, что на этом простом правиле заканчивается Python для новичков и начинается Python для профессионалов? Потому что за этой банальной разницей скрывается целый мир оптимизаций, архитектурных решений и подводных камней. Вы когда-нибудь задумывались, почему кортежи на самом деле быстрее списков? Не на уровне теории, а на уровне байтов и выделения памяти? Или почему Python позволяет использовать кортеж как ключ словаря, а при попытке сделать то же самое со списком просто взрывается с ошибкой TypeError ?

https://habr.com/ru/articles/965592/

#tuple #list #python3 #python_для_начинающих

Python для начинающих: () или []? Ответ, который изменит ваш код

Вступление: Загадка () против [] Положа руку на сердце, давайте признаемся: когда вы только начинали учить Python, вам наверняка на первом же занятии вам сказали: «Списки ( list ) — изменяемые, а...

Хабр

Кортежі — це гетерогенні структури даних, фіксованої довжини, та з елементами здебільшого різних типів.

Створюються вони за допомоги бінарного оператора (,).

> (,) 'c' True ('c',True)

При цьому в нас виходить двох елементний кортеж, часто його ще називають парою. Але кортежі можуть бути й довші, або коротші.

Найкоротший кортеж - це порожній кортеж.

> () ()

Якщо нам потрібно більше елементів, то значить треба додати більше ком. Але кортежу довжиною в один елемент не існує, оскільки синтаксично його не можливо створити через те що елемент в дужках, наприклад (3), це просто групування.

> (,,) 4 'a' False (4,'a',False) > (,,,) 4 'a' False "Haskell" (4,'a',False,"Haskell")

Але створювати таким синтаксисом не дуже зручно, оскільки нам постійно потрібно рахувати кількість аргументів, й вказувати відповідну кількість ком, на одну менше за значень. Для спрощення, синтаксис хаскеля трохи підцукрили, й дозволили робити нам так як вони відображаються.

> (4, 'a', False, "Haskell") (4,'a',False,"Haskell")

Тепер перейдемо до їхніх типів.

Нагадую: простори імен типів та всього іншого відокремлені.

Тип кортежів це ().

> :t () () :: ()

Якщо це не порожній кортеж, то й тип не порожній.

> :t ('c', True) ('c', True) :: (Char, Bool)

Це все добре, але треба якось же із ними працювати й отримувати окремі елементи. У стандартній бібліотеці для цього є кілька готових функцій, наприклад візьмемо fst котра повертає перший елемент, та snd котра повертає другий елемент.

> p = (1,2) > fst p 1 > snd p 2

Ці функції працюють тільки з парами, і реалізовуються через зіставлення.

fst (x,_) = x snd (_,y) = y

#ukrhaskell #haskell #tuple #кортежі #типи #програмування

Гетерогенна система — Вікіпедія

Single Element Tuple in Python:
A single element tuple in Python is defined by placing a comma after the element, e.g., t = (5,).
#Python #Tuple #PythonTips #LearnPython #Coding #PythonBasics #DevTips #SingleElementTuple #PythonProgramming #codenewbie
Slicing Tuple in python:
Slicing a tuple in Python means extracting a portion of it using the syntax tuple[start :stop :step].
#Python #PythonTips #Tuple #PythonSlicing #CodeSnippet #LearnPython #DevTips #100DaysOfCode #Programming #pythonlearning

I really like the concept of “speed back” high bandwidth full team peer feedback retro sesssions.

Particularly for how it normalizes giving feedback to each other and makes it an expected part of the process.

#snyk #distributed #tuple https://overcast.fm/+ABM8Qiyi6Ag

How Snyk Staff Engineer thinks about scaling remote teams, leadership, and rituals with Ben Grohbiel — Distributed.

How do feedback loops shape high-performing engineering teams?In this episode of the Distributed podcast, host Jack Hannah talks with Ben Grohbiel, Staff Engineer at Snyk, about the interplay between leadership, technical excellence, and collaboration in remote teams. Ben shares his journey from running a web dev shop to leading platform teams and eventually transitioning from engineering management back to an individual contributor role.Ben also discusses the habits and rituals that help teams stay aligned, the importance of feedback loops in decision-making, and how structuring remote teams for success requires more than just good tooling—it’s about fostering the right culture.Highlights:Transitioning from engineering manager to staff engineer: what changed and whyThe role of SpeedBacks and pairing in driving continuous team improvementHow Snyk structures its remote teams for collaboration and efficiencyThe debate around remote vs. hybrid vs. in-person setups—and what really mattersNavigating autonomy and…

Testing the Performance of Python Named Tuples: are named tuples slower than ordinary ones? Let's find out. (Spoiler alert: yes, a bit.)

https://codedrome.substack.com/p/testing-the-performance-of-python

#python #programming #tuple #namedtuple

Testing the Performance of Python Named Tuples

Are named tuples slower than ordinary ones? Let's find out. (Spoiler alert: yes, a bit.)

CodeDrome

tuple в CPython – мутабельный! И другие шокирующие детали из C-шной реализации

Привет! Меня зовут Никита Соболев, я core-разработчик языка программирования CPython, а так же автор серии видео про его устройство. Я продолжаю свой цикл статей на хабре про детали реализации питона. Сегодня я хочу рассказать, как tuple устроен внутри. Под катом будет про: мутабельность кортежей (и планы по отмене такого поведения), дичь с ctypes , переиспользование памяти и другие оптимизации. Ну и конечно – мое полное видео на полтора часа, где будет множество дополнительной информации о деталях работы VM. Если вам такое интересно или целиком незнакомо – добро пожаловать!

https://habr.com/ru/articles/874608/

#python #c #cpython #compiler #tuple

tuple в CPython – мутабельный! И другие шокирующие детали из C-шной реализации

Привет! Меня зовут Никита Соболев, я core-разработчик языка программирования CPython, а так же автор серии видео про его устройство. Я продолжаю свой цикл статей на хабре про детали реализации питона....

Хабр

Реализуем эффективный тупль с помощью C++26

Свет видел много любительских реализаций std::tuple , и реализация своих велосипедов — наверное, это действительно действенный способ обучения: вряд-ли можно сказать, что ты что-то по-настоящему понимаешь, если не можешь объяснить, как это что-то устроено. Многие пытливые умы на протяжении десятилетий задавались вопросом: как же реализован std::tuple , как мне реализовать свой тупль (кортеж)? [1] И немало было дано ответов на такие вопросы и написано статей ( [2] ). Однако я берусь утверждать, что все они имеют один фатальный недостаток ! Конкретнее, они все рассматривают в основном лишь один (и при этом неэффективный) способ реализации : с помощью множественного наследования или рекурсивного инстанцирования, имеющий в свой очередь множество своих недостатков, главный из которых — неэффективное использование памяти. В то время как современный C++ позволяет реализовать тупль гораздо проще (без обилия шаблоноты) и эффективнее . Войти в мир эффективных реализаций туплей

https://habr.com/ru/articles/835176/

#c++ #c++26 #tuple

Реализуем эффективный тупль с помощью C++26

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

Хабр

@diazona @j

>>> def t(*args):
... return tuple(args)
...
>>> x = t(3)
>>> x
(3,)

(half in jest)

I think the comma making the tuple is one of those things that you trip over when you're brand-new to Python, and then you get it and it's not an issue much after that.

#tuple #comma #syntax