Тема: Допомога із задачею Python

Написати функцію, що вилучає зі словника усі ключі , яким відповідають нульові значення

dict = {1:'hello', 2 : 0, 'r': 0}


def remove_zero_values ():
    for value in dict.values():
        if value==0:
            #тут потрібна допомога]

2

Re: Допомога із задачею Python

Прихований текст

З питаннями щодо пітонів - то в зоопарк, там має бути тераріум і відповідні фахівці.

3

Re: Допомога із задачею Python

Для вилучення елементу використовується оператор del d[k] (де d — словник, k — ключ), але тоді перебір треба робити не за значеннями, а за ключами: за значенням ви до елементу доступ не отримаєте.

Ще, називати змінну ім'ям її типу — погана ідея. Виберіть замість dict якусь іншу назву.

Подякували: ultimatum_pythom1

4

Re: Допомога із задачею Python

я написав такий код і він працює, але чи буде він працювати у всіх інших випадках без  exeption ?

d = {1:'hello', 2 : 0, 'r': 0, 0:100, '45':0}

def remove_zero_values ():
    for k in list(d.keys()):
        if d[k] == 0:
            del d[k]
    print(d)
remove_zero_values()

5

Re: Допомога із задачею Python

Помилок у самій функції не бачу, їй нема де зламатися — кожного разу вона робитиме одне й те ж.

Хіба що, можливо, є сенс зробити функцію, яка працюватиме не лише з цією конкретною змінною-словником, а й із будь-яким іншим словником. Зробіть функцію з параметром і передавайте їй змінну-словник (цю ж або будь-яку іншу) при виклику.

Подякували: ultimatum_pythom1