furas.pl
# prywatne notatki - Python, Linux, Machine Learning, etc.

    PyGTK - minimalny program

    Minimalny program

    Oto jak mógłby wyglądać minimalny program w Pythona z użyciem GTK.

    Niby działa i wyświetla okno ale mimo wszystko będzie wymagał kilku dodatków o czym poniżej.

    python gtk minimalny przykład
    from gi.repository import Gtk
    
    win = Gtk.Window()
    win.show_all()
    
    Gtk.main()
    

    Opis kodu:

    • importujemy bibliotekę GTK (w pewien specyficzny sposób).
    • win …
    więcej »

    Potokowanie (czyli piping) w Pythonie

    Potokowanie

    Potokowanie w Linux to przekazywanie wyników jednego programu do następnego zamiast wysyłać je na ekran.

    Przykładowo w poniższym ls zamiast wyświetlać listę plików przekazuje ją do sort, która sortuje listę w odwrotnej kolejności i przekazuje do head, która wyświetla pierwszy 5 wierszy.

    $ ls | sort -r | head -5
    

    Można to …

    więcej »

    Rysowanie w Turtle - Wait On Click

    WERSJA ROBOCZA WPISU

    Turtle posiada funkcję exitonclick(), która po zakończeniu rysowania czeka na kliknięcie myszką w dowolnym miejscu okna aby je zamknąć. i nie trzeba wtedy klikać specjalnie w przycisk [X] aby zamkąć okno.

    Nie ma jednak funkcji, która by pozwalała czekała na kliknięcie myszką w dowolnym miejscu aby kontynuować …

    więcej »

    Rysowanie w Turtle - Okno wprowadzania danych - textinput i numinput

    WERSJA ROBOCZA WPISU

    Turtle udostępnia dwa okienka do wprowadzania danych - textinput() i numinput()

    textinput

    (dokumentacja: textinput )

    python - rysowanie w turtle - textinput

    Składnia:

    textinput(title, prompt)

    title – string prompt – string
    import turtle
    
    napis = turtle.textinput('Opis figury', 'Napis')
    
    print('Napis:', napis)
    
    turtle.mainloop()
    

    Okno pozwala na wpisanie dowolnego tekstu i zatwierdzenie klawiszem Enter lub przyciskiem Ok …

    więcej »

    Rysowanie w Turtle - Płótno (Canvas) i funkcje Tkinter

    WERSJA ROBOCZA WPISU

    Moduł turtle jest zbudowane w oparciu o moduł tkinter i wykorzystuje jego obiekt Canvas (Płótno) do wyświetlania rysowanych elementów.

    turtle pozwala nawet na bezpośredni dostęp do płótna - dzięki turtle.getcanvas() - co pozwala na wykorzystanie funkcji udostępnianych przez płótno w tkinter.

    create_rectangle - kwadrat i prostokąt

    Składnia:

    canvas.create_rectangle …
    więcej »

    Rysowanie w Turtle - Kwadrat i Prostokąt

    Kwadrat

    (ang: square)

    Aby narysować kwadrat należy cztery razy powtórzyć: narysuj bok, skręć w prawo (lub lewo) o 90 stopni.

    Podczas rysowania żółw w sumie wykonuje obrót o 360 stopni a ponieważ robi 4 skręty więc każdy z nich ma 360/4 = 90 stopni.

    import turtle
    
    turtle.forward(300)
    turtle …
    więcej »

    Rysowanie w Turtle - Trójkąt

    Trójkąt równoboczny

    (ang: equilateral triangle)

    Aby narysować trójkąt równoboczny należy powtórzyć trzy razy: narysuj bok, skręć w prawo (lub lewo) o 120 stopni.

    Podczas rysowania żółw w sumie wykonuje obrót o 360 stopni a ponieważ robi 3 skręty więc każdy z nich ma 360/3 = 120 stopni.

    import turtle
    
    turtle …
    więcej »

    Rysowanie w Turtle - Rysowanie online w przeglądarce

    WERSJA ROBOCZA WPISU

    trinket.io

    Strona pozwala na uruchamianie kodu w Pythonie

    trinket.io

    Przykład: https://trinket.io/python/7975ecf32f

    repl.it

    Strona pozwala na uruchamianie kodu w Pythonie

    repl.it/languages/python_turtle

    Przykład: https://repl.it/repls/SugaryQueasyPublisher

    transcrypt.org

    Jest to konwerser kodu Pythona do JavaScript, który można …

    więcej »

    Rysowanie w Turtle - Schodki

    WERSJA ROBOCZA WPISU
    import turtle
    
    turtle.tracer(2)#False)
    
    def up():
        for _ in range(10):
            turtle.forward(10)
            turtle.left(90)
            turtle.forward(10)
            turtle.left(-90)
    
    def down():
        for _ in range(10):
            turtle.forward(10)
            turtle.left(-90)
            turtle.forward(10)
            turtle.left(90)
    
    def example1():
        for …
    więcej »

    Rysowanie w Turtle - inne

    WERSJA ROBOCZA WPISU

    Figury rekurencyjne

    TODO:

    Prędkość rysowania

    Całkowite wyłączenie odświeżania obrazu - o czym nie napisali w dokumentacji.

    turtle.tracer(False)
    

    Zwykle wymaga to użycia także turtle.update() aby wymusić odświeżenie obrazu.

    import turtle
    
    #turtle.speed(0)
    #turtle.delay(0)
    #turtle.tracer(100,0)
    turtle.tracer(False)
    
    def wielobok(n …
    więcej »

    Rysowanie w Turtle - Okrąg, Łuk, Koło i Elipsa

    WERSJA ROBOCZA WPISU

    Okrąg

    Do rysowania okręgu służy funkcja circle().

    Dokumentacja: turtle - circle()

    turtle.circle(radius, extent=None, steps=None)
    
    radius
    • promień okręgu czyli odległość okręgu od jego środka.
    • jeśli promień jest dodatni to środek okręgu będzie na lewo od pozycji żółwia (w odległości radius) a żółw będzie poruszał się …
    więcej »

    Rysowanie w Turtle - Przykłady dostarczane z Pythonem

    Moduł turtle zawiera kilka przykładów pokazującyh jego użycie. Część z przykładów nawet pokazuje kod źródłowy wykonywanych rysunków.

    Podstawowy przykład

    Podstawowy przykład można wywołać przez

    $ python -m turtle
    

    A oto co możemy zobaczyć

    Rysunek 1

    python turtle przykład 1

    Rysunek 2

    python turtle przykład 2

    Nie jest jednak podany kod źródłowy, który wykonuje te rysunki.

    Użycie __file__ pozwala poznać …

    więcej »

    Rysowanie w Turtle - Romb, Trapez i Gwiazda

    WERSJA ROBOCZA WPISU

    Romb

    (ang: rhombus)

    import turtle
    
    for _ in range(2):
        turtle.forward(100)
        turtle.left(90-45)
        turtle.forward(50)
        turtle.left(90+45)
    
    turtle.mainloop()
    

    Trapez

    (ang: trapezoid)

    import turtle
    import math
    
    a = 50
    b = math.sqrt((a**2)/2)
    b = 100 - 2*b
    turtle.forward …
    więcej »

    Rysowanie w Turtle - Wstęp

    WERSJA ROBOCZA WPISU

    Wstęp

    W przykładach nie stosuje from <modul> import * aby było widać, z jakich modułów pochodzą jakie funkcje. Z powodu nieczytelności import * jest niezalecane także przez dokument PEP 8 -- Style Guide for Python Code <https://www.python.org/dev/peps/pep-0008/) (wyszukaj `import *>`__.

    W turle niektóre funkcje …

    więcej »

    Rysowanie w Turtle - Wielobok

    WERSJA ROBOCZA WPISU

    Wielobok foremny

    (ang: regular polygon)

    Chcemy narysować figurę o N bokach. Tak jak poprzednio podczas rysowania żółw musi wykonać obrót o 360 stopni a ponieważ ma zrobić N skrętów więc każdy z nich musi mieć 360/N stopni.

    Pięciobok foremny będzie wymagał pięciu obrotów o 360/5 …

    więcej »

Strona: 1 / 9 »

Książki: python-dla-kazdego-podstawy-programowania python-wprowadzenie python-leksykon-kieszonkowy python-receptury python-programuj-szybko-i-wydajnie python-projekty-do-wykorzystania black-hat-python-jezyk-python-dla-hackerow-i-pentesterow efektywny-python-59-sposobow-na-lepszy-kod tdd-w-praktyce-niezawodny-kod-w-jezyku-python aplikacje-internetowe-z-django-najlepsze-receptury