This media is not supported in your browser
VIEW IN TELEGRAM
You solve the task, the tests pass, and nobody tells you that the pattern you just used will fall apart at scale.
Create your own AI agent inside Telegram in about a minute and put it next to your practice.
▫️ paste a solution and get the review: correctness first, then the habit worth changing
▫️ ask for a harder version of the same task and it writes one
▫️ send a traceback and get the cause, not a search result
▫️ writes a runnable script whenever the explanation is not enough
▫️ remembers which topics you already closed and which you keep failing
▫️ voice in, voice out — say the algorithm out loud and it corrects you
Setup takes a minute: open the link, start the free trial, name your agent.
30 days free, no card needed.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Learn Python Coding
Try it, it's free, your AI assistant
Creating Nested Dictionary Values using `setdefault()` 🔥
When grouping data, it's often necessary to check if a key exists, create a container for it, and then add a value.
For example, distributing users by role. Without special methods, this usually involves a separate key check.
The
The result is the same structure without a separate key existence check:
It's important to note that the expression of the second argument is evaluated every time
In this code,
🔥
#Python #Coding #Dicts #Programming #CodeTips #DevLife
✨ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk
⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
When grouping data, it's often necessary to check if a key exists, create a container for it, and then add a value.
For example, distributing users by role. Without special methods, this usually involves a separate key check.
users = [
("admin", "alex"),
("user", "max"),
("admin", "kate"),
]
groups = {}
for role, name in users:
if role not in groups:
groups[role] = []
groups[role].append(name)
The
setdefault() method allows you to perform this operation directly when accessing the dictionary. If the key exists, it returns its current value. If the key is missing, the provided value is written to the dictionary and then returned:groups = {}
for role, name in users:
groups.setdefault(
role,
[],
).append(name)The result is the same structure without a separate key existence check:
print(groups)
# {
# 'admin': ['alex', 'kate'],
# 'user': ['max']
# }
It's important to note that the expression of the second argument is evaluated every time
setdefault() is called, even if the key already exists. Therefore, you should avoid creating expensive objects or performing functions with side effects there:value = cache.setdefault(
key,
build_value(),
)
In this code,
build_value() will be called before the method itself is executed. If the value creation should only happen when the key is missing, it's better to use an explicit check or a suitable data structure, such as defaultdict.setdefault() is well-suited for compactly initializing simple mutable containers when grouping and aggregating data. However, it's important to remember that the provided value is evaluated regardless of whether the key exists.#Python #Coding #Dicts #Programming #CodeTips #DevLife
✨ Join Best TG Channels https://t.iss.one/addlist/0f6vfFbEMdAwODBk
⭐️ Join Our WhatsApp Channel https://whatsapp.com/channel/0029VaC7Weq29753hpcggW2A
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
AI PYTHON 🌟
You’ve been invited to add the folder “AI PYTHON 🌟”, which includes 15 chats.
❤2