Usuń pary ze słownika na podstawie wartości

Zadanie 4 z 15 · rozdział 17Trudność: 1 z 3dictfiltrowanie

Treść zadania

Wczytaj słownik złożony z n par (klucz — słowo, wartość — liczba całkowita) oraz liczbę k. Usuń ze słownika wszystkie pary, których wartość jest równa k, i wypisz wynikowy słownik.

Dane wejściowe

  • 1. linia: n
  • następnie n linii: klucz wartość (klucze są różne i składają się z małych liter)
  • ostatnia linia: k

Dane wyjściowe

Słownik po usunięciu par, w postaci {'klucz': wartość, …}, z parami w kolejności z wejścia; jeśli usunięto wszystkie pary — {}.

Ograniczenia

  • 1 ≤ n ≤ 50

Uwagi

  • Nie usuwaj elementów ze słownika, po którym właśnie iterujesz — przejdź po kopii kluczy (list(slownik)) albo zbuduj nowy słownik.

Przykład

Wejście
4
aaa 5
abc 1
xxx 5
cba 3
5
Wyjście
{'abc': 1, 'cba': 3}

Potrzebujesz teorii?

Zasady obowiązujące w rozdziale 17

Zadania w tym rozdziale ćwiczą pracę ze słownikami (dict): tworzenie, dodawanie i usuwanie par, zliczanie wystąpień oraz grupowanie danych według klucza.
Każde zadanie (oraz każdy podpunkt) jest osobnym, niezależnym programem: czyta standardowe wejście (stdin) i wypisuje wynik na standardowe wyjście (stdout).

Konwencje wspólne:

  • Dane wczytuj dokładnie w kolejności podanej w sekcji Wejście; jeśli w jednej linii jest kilka wartości — rozbij ją po spacjach.
  • Jeśli wynikiem jest słownik, wypisz go tak, jak robi to print(slownik) w Pythonie: {klucz: wartość, klucz: wartość} — pary oddzielone przecinkiem i spacją, po dwukropku spacja, klucze i wartości napisowe w apostrofach (np. {'ala': 2, 'ma': 1}), liczby bez apostrofów (np. {1: 1, 2: 4}), pusty słownik to {}.
  • Kolejność par w wypisanym słowniku to kolejność, w jakiej klucze były do niego dodawane (tak zachowuje się słownik w Pythonie).
  • Program nie wypisuje komunikatów typu „Podaj liczbę:”.

Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.

Python uruchomi się w przeglądarce przy pierwszym teście.

Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.

Testy

Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.

Test 1

Nie uruchomiono
Wejście
3
a 1
b 2
c 1
1
Oczekiwane wyjście
{'b': 2}

Test 2

Nie uruchomiono
Wejście
2
x 9
y 8
5
Oczekiwane wyjście
{'x': 9, 'y': 8}

Test 3

Nie uruchomiono
Wejście
2
kot 4
pies 4
4
Oczekiwane wyjście
{}

Test 4

Nie uruchomiono
Wejście
1
zero 0
1
Oczekiwane wyjście
{'zero': 0}

Test 5

Nie uruchomiono
Wejście
5
ab -1
cd 2
ef -1
gh 3
ij -1
-1
Oczekiwane wyjście
{'cd': 2, 'gh': 3}
Uruchom z własnymi danymi