Skip to content

Latest commit

 

History

History
155 lines (127 loc) · 3.96 KB

5.md

File metadata and controls

155 lines (127 loc) · 3.96 KB

5 - Wizualizacja danych

Czego się nauczymy

  • Co to słownik (dict)
  • Jak wyświetlić dane na wykresie
  • Podstawy programowania obiektowego
  1. Dict (słownik)
data = {
    'name': 'Jan',
    'surname': 'Kowalski',
    'age': 26,
    'familly': {
        'brothers': [
            {
                'name': 'Kamil',
                'surname': 'Kowalski',
                'age': 32,
            },
            {
                'name': 'Jacek',
                'surname': 'Kowalski',
                'age': 36,
            }
        ],
        'sisters': []
    }
}

print("data['name'] => ", data['name'])
print(data['not exists'])
  • Jak wypisać imię pierwszego brata?
  • Jak dodać siostrę?
  • Jak zrobić listę imion i nazwisk braci?
# List comprehension
list1=[{'a': 5}, {'a': 6}]
list2=[]
for item in list1:
    list2.append(item['a'])

list3 = [element['a'] for element in list1]
print(list2, list3)
  1. Matplotlib

10 linijek i mamy wykres ceny bitcoina z ostatniego roku
Zainstaluj: pip install matplotlib arrow

import arrow
import matplotlib
matplotlib.use('agg')
import matplotlib.pyplot as plt
import requests


data = requests.get('https://www.bitmarket.pl/graphs/BTCPLN/1y.json').json()
time = [arrow.get(row['time']).datetime for row in data]
price = [float(row['close']) for row in data]
plt.plot(time, price)
plt.savefig('image.png')
  1. Programowanie Obiektowe:
    Jeśli mielibyśmy pisać gre lub symulator samochodu, jak programistycznie przedstawić samochód?
class Car:
    fuel = 0

car = Car()
car.start_engine()
car.drive(5)
car.stop_engine()
print(car.fuel)

Co zrobić żeby można go było wygodnie używać z poziomu kodu ☝️ analogicznie jak listy.

a=[]
a.append(5)
  • Klasa Car
  • poziom paliwa
  • jechanie zużywa paliwo
  • możliwość tankowania
  • nie da się jechać jeśli silnik nie jest włączony
  1. Dziedziczenie
class Vehicle:
    speed = 0

    def show(self):
        print(f'{self.__class__.__name__} Prędkość: {self.speed} poziom paliwa {self.fuel}')

class Car(Vehicle):
    speed = 230

    def __init__(self, fuel):
        self.fuel = fuel

class Bike(Vehicle):
    speed = 40
    

Car(80).show()
Bike().show()
  1. Co tak naprawdę robi import ?
    Podziel kod tak żeby klasy były w jednym pliku a ich użycie w innym

  2. Django - serwery, strony internetowe, temat rzeka...

pip install django
django-admin startproject hello_django
cd hello_django
python manage.py runserver

Wejdź

python manage.py migrate
python manage.py startapp firstapp

Zobaczmy historię

python manage.py createsuperuser

Admin panel Dodaj użytkownika i wyświetl go na stronie User.objects.get(username='admin')

  • Wyświetlmy wszystkich użytkowników
  • napiszmy widok który zwróci użytkowników jako json

Co dalej?

  • Rzuć okiem na kurs przygotowany przez Centrum Edukacji Obywatelskiej np. aplikacje okienkowe. Dość przejrzyście opisane różne proste rzeczy które można zrobić w pythonie.
  • DjangoGirls kurs po polsku, gdzie internet, django itd. jest wytłumaczone od zera.
  • PyLight Spotkania dla początkujących
  • PyKonik Meetup dla zaawansowanych, ale co jakiś czas jest spotkanie typu Coding Dojo, gdzie wystarczy znać podstawy, a można się bardzo dużo nauczyć.

Feedback

Ocena