Telegram Group & Telegram Channel
🐍 Задача с подвохом на Python. Что выведет данный код?
def update_dict(key, value, d={}):
d[key] = value
return d

dict1 = update_dict('a', 1)
dict2 = update_dict('b', 2, {})
dict3 = update_dict('c', 3)

print("dict1 =", dict1)
print("dict2 =", dict2)
print("dict3 =", dict3)

— Варианты ответа:

A.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'c': 3}


B.
dict1 = {'a': 1, 'c': 3}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


C.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


Какой из этих ответов правильный и почему?🧐

— Подсказка:
аргументы по умолчанию в Python вычисляются только один раз - при определении функции. Словарь, как и список, является изменяемым объектом.

В функции update_dict параметр d={} создается один раз и используется для всех вызовов, где не передается явно другой словарь.


— Правильный ответ: B

Объяснение:
1️⃣ dict1 = update_dict('a', 1) → используется словарь по умолчанию → {'a': 1}
2️⃣ dict2 = update_dict('b', 2, {}) → создан новый словарь → {'b': 2}
2️⃣ dict3 = update_dict('c', 3) → снова используется исходный словарь → {'a': 1, 'c': 3}
4️⃣ dict1 тоже изменится, так как это ссылка на тот же объект → {'a': 1, 'c': 3}

Итоговый вывод:
dict1 = {'a': 1, 'c': 3}
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


@python_job_interview



tg-me.com/python_job_interview/1104
Create:
Last Update:

🐍 Задача с подвохом на Python. Что выведет данный код?

def update_dict(key, value, d={}):
d[key] = value
return d

dict1 = update_dict('a', 1)
dict2 = update_dict('b', 2, {})
dict3 = update_dict('c', 3)

print("dict1 =", dict1)
print("dict2 =", dict2)
print("dict3 =", dict3)

— Варианты ответа:

A.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'c': 3}


B.
dict1 = {'a': 1, 'c': 3}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


C.
dict1 = {'a': 1}  
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


Какой из этих ответов правильный и почему?🧐

— Подсказка:
аргументы по умолчанию в Python вычисляются только один раз - при определении функции. Словарь, как и список, является изменяемым объектом.

В функции update_dict параметр d={} создается один раз и используется для всех вызовов, где не передается явно другой словарь.


— Правильный ответ: B

Объяснение:
1️⃣ dict1 = update_dict('a', 1) → используется словарь по умолчанию → {'a': 1}
2️⃣ dict2 = update_dict('b', 2, {}) → создан новый словарь → {'b': 2}
2️⃣ dict3 = update_dict('c', 3) → снова используется исходный словарь → {'a': 1, 'c': 3}
4️⃣ dict1 тоже изменится, так как это ссылка на тот же объект → {'a': 1, 'c': 3}

Итоговый вывод:
dict1 = {'a': 1, 'c': 3}
dict2 = {'b': 2}
dict3 = {'a': 1, 'c': 3}


@python_job_interview

BY Python вопросы с собеседований


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/python_job_interview/1104

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Pinterest (PINS) Stock Sinks As Market Gains

Pinterest (PINS) closed at $71.75 in the latest trading session, marking a -0.18% move from the prior day. This change lagged the S&P 500's daily gain of 0.1%. Meanwhile, the Dow gained 0.9%, and the Nasdaq, a tech-heavy index, lost 0.59%. Heading into today, shares of the digital pinboard and shopping tool company had lost 17.41% over the past month, lagging the Computer and Technology sector's loss of 5.38% and the S&P 500's gain of 0.71% in that time. Investors will be hoping for strength from PINS as it approaches its next earnings release. The company is expected to report EPS of $0.07, up 170% from the prior-year quarter. Our most recent consensus estimate is calling for quarterly revenue of $467.87 million, up 72.05% from the year-ago period.

How Does Bitcoin Mining Work?

Bitcoin mining is the process of adding new transactions to the Bitcoin blockchain. It’s a tough job. People who choose to mine Bitcoin use a process called proof of work, deploying computers in a race to solve mathematical puzzles that verify transactions.To entice miners to keep racing to solve the puzzles and support the overall system, the Bitcoin code rewards miners with new Bitcoins. “This is how new coins are created” and new transactions are added to the blockchain, says Okoro.

telegram from id


Telegram Python вопросы с собеседований
FROM USA