# -*- coding: utf-8 -*-
# кілька прикладів використання словників

# спочатку визначаємо словник. поки порожній
# тут ми триматимемо наші планети:
# ім'я - ключ словника
# діаметр планети в км - значення словника
planets = {}

# давайте кілька планет встановимо
planets['Earth'] = 12756  # матінка земля
planets['Moon'] = 3476    # місяченько
planets['Mercury'] = 4880 # меркурій
planets['Jupiter'] = 142740 # юпітер

# скористаємося функцією has_key() - вона працює наступним чином
# function_name.has_key(key-name)
# і повертає True, якщо словник має даний (key-name) ключ, і False
# в протилежному випадку

# згадуємо умовні оператори if, then, else:
if planets.has_key('Earth'):
    print "Земля - частина нашої сонячної системи"
else:
    print "Земля зникла?"

# тепер спробуємо функцію keys() - вона повертає список всіх ключів словника
print "Наші планети"
print planets.keys()

# також ми можемо скористатися даною функцією, щоб присвоїти змінній список
# ключів словника
keys = planets.keys()

# таким чином можемо отримати список усіх значень словника
# для цього маємо функцію values()
print "Радіуси планет бувають:", planets.values()

# присвоїмо список значень нашого словника планет у змінну
values = planets.values()

# cписки можемо твкож сортувати (адже пам'ятаємо, що списки це тип даних
# що є впорядкованим!) з допомогою функції sort()
# яко в даній функції не передавати додаткових параметрів, тоді
# по замовчуванню, вона сортуватиме елементи списку згідно абетки(для стрічок)
# або у зростаючому порядку(для чисел)
# Зверніть увагу: ми не можемо сортувати словники, адже дані всередині нього не 
# є впорядкованими
print keys
keys.sort()

# введіть цю програму в себе в редакторі, запустіть і порівняйте що вийведе
# наступний рядок у порівнянні з першим 'print keys'
print keys

# так само із значеннями нашого словника
print values
values.sort()
print values

# і на останок, ми можемо взнати кількість елементів у словнику, чи списку
# чи кортежі з допомогою функції len()
print "Кількість планет: ", len(planets)


