• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Początki z pythonem i słownik

0 głosów
205 wizyt
pytanie zadane 3 marca 2017 w Python, Django przez __new__in__town Bywalec (2,100 p.)
zamknięte 6 marca 2017 przez __new__in__town

Od 2 dni zacząłem swoją zabawe z pythonem, wcześniej jedynie czytałem po psiak kod. Więc z góry proszę o wyrozumiałość ;]

 

Wykładam sie na stworzeniu prostego słownika. Wszystko działa pięknie gdy buduje słownik bezpośrednio poprzez wywołanie pythona w terminalu, ale program zaczyna się sypać gdy staram sie go zmajstrować w edytorze.

 

Z góry przepraszam za złe formatowanie tekstu, w IDE wszystko jest poprawnie sformatowane.

Prosty słowniczek, który będzie tłumaczył jakieś tam słówka po wpisaniu słowa kluczowego. Gdy wpisuje słowo kluczowe to zostaje zwrócona domyślna wartosć funkcji get() czyli None.

 

slownik = {
         "slowo klucz": "odpowiedz",
         "slowo klucz2": "odpowiedz2"
}

szukaj = ""

while szukaj != 3:
       szukaj = int(raw_input("""
             1 - Znajdz
             2 - Dodaj
             3 - Zamknij
             """))
             if szukaj == 1:
                 search = raw_input("Podaj slowo: ")
                 if search in slownik:
                      print(slownik.get(""))

               if szukaj == 2:
                    input("Dodaj: ")

 

komentarz zamknięcia: Rozwiazane.

2 odpowiedzi

+2 głosów
odpowiedź 3 marca 2017 przez adrian17 Ekspert (204,320 p.)

print(slownik.get(""))

Bo wyciągasz ze słownika wartość o kluczu "", której nie ma. Zamiast tego można po prostu napisać:

print slownik[search]

 

+1 głos
odpowiedź 3 marca 2017 przez mokrowski VIP (112,700 p.)

Warto już na wstępie przyzwyczajać się do składni tego języka. Tu jedynie dla testu obecności w słowniku... 

slownik = {
         "klucz": "odpowiedz",
         "klucz2": "odpowiedz2"
}
 
szukaj = ""
 
while szukaj != 3:
    szukaj = int(raw_input("""
             1 - Znajdz
             2 - Dodaj
             3 - Zamknij
             Wybor: """))
    if szukaj == 1:
        search = raw_input("Podaj slowo: ")
        print(slownik[search]) if search in slownik.keys() else "";
 
    if szukaj == 2:
        input("Dodaj: ")

 

Choć oczywiście jak już poznasz język, zapiszesz to z całą pewnością inaczej .

Podobne pytania

0 głosów
2 odpowiedzi 120 wizyt
0 głosów
1 odpowiedź 154 wizyt
0 głosów
2 odpowiedzi 99 wizyt
pytanie zadane 11 marca 2017 w Sprzęt komputerowy przez Promcio Użytkownik (690 p.)
Porady nie od parady
Wynikowy wygląd pytania, odpowiedzi czy komentarza, różni się od tego zaprezentowanego w edytorze postów. Stosuj więc funkcję Podgląd posta znajdującą się pod edytorem, aby upewnić się, czy na pewno ostateczny rezultat ci odpowiada.Podgląd posta

67,116 zapytań

114,064 odpowiedzi

241,764 komentarzy

47,028 pasjonatów

Przeglądających: 178
Pasjonatów: 11 Gości: 167

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...