PYI_PY_W13_M03 Operacje wejścia/wyjścia.
Sposoby formatowania informacji przekazywanych przez program
Funkcja print() służy do wyświetlania informacji na standardowym wyjściustandardowym wyjściu. Gdy chcemy wypisać dużą liczbę różnych informacji w ujednolicony sposób, możemy ułatwić sobie takie zadanie, stosując metodę .format().
Przeanalizujmy wyświetlenie 5 różnych liczb zmiennoprzecinkowych – zostaną one wypisane na ekranie. Kod będzie wyglądał w następujący sposób:
Chcielibyśmy wypisać te liczby w kolejnych wierszach. Tak, aby kropka dziesiętna była zawsze w tym samym miejscu. Formatowanie specjalne to sposób formatowania powodujący np. równe rozmieszczenie znaku separatora tych liczb. Użyjemy opisu formatowania {:>6.3f}, który oznacza:
znak
">"– równamy do prawej strony,6– długość napisu ma mieć minimum 6 znaków (wliczając separator), jeśli napis będzie krótszy, zostanie uzupełniony znakami spacji na początku,3– ilość miejsc dziesiętnych, jeśli liczba będzie miała więcej, wynik będzie zaokrąglony, jeśli mniej, zostaną dodane0,znak
"f"– oznacza, że liczba jest typufloat,znaki
":"oraz „"."są wymagane zgodnie z dokumentacją Pythona.
Ogólna postać zapisu kodów sterujących formatowaniem dla liczb wygląda następująco:
Przykładowe wykonanie różnych sposobów formatowania:
Sposób formatowania i postać kodów sterujących są opisane w dokumentacji, dostępnej po wydaniu polecenia help('FORMATTING').
Napisz program, który pobierze od użytkownika dane 3 osób: imię, liczbę punktów uzyskanych na sprawdzianie oraz obliczy wynik procentowy każdej osoby. Przyjmij, że maksymalnie można uzyskać 120 punktów. Wyniki wyświetl w tabeli zawierającej nagłówek: ' Lp. | Imię | Punkty | Procenty '.
Specyfikacja problemu:
Dane:
maks– liczba naturalna dodatnia; maksymalna liczba punktów możliwych do uzyskania na sprawdzianieimiona– pobrane od użytkownika trzy imiona; trzy łańcuchy znakówpunkty– pobrane od użytkownika liczby zdobytych przez każdego ucznia punktów
Wynik:
Na standardowym wyjściu program wypisuje tabele składającą się z nagłówka oraz wierszy reprezentujących wyniki każdego z trzech uczniów.
Przygotuj kilka tabel podobnych do tej z poprzedniego polecenia. Porównaj i przedyskutuj z innymi osobami wyniki działania programów.
Interfejs graficzny i wprowadzanie danych
Niektóre programy mają graficzny interfejs użytkownikagraficzny interfejs użytkownika (GUI). Podczas pisania takich aplikacji wykorzystywane są środowiska RADRAD. Dla języka Python nie powstało rozbudowane środowisko tego typu.
Do pisania graficznych aplikacji desktopowych możemy wykorzystać środowiska IDEIDE, które pomagają tworzyć kod źródłowy. W przypadku języka Python dostępny jest moduł PySimpleGUI, pozwala on wyświetlać proste okna dialogowe.
Opisywany moduł trzeba zainstalować za pomocą menedżera pip. Należy w tym celu wydać komendę w linii poleceń systemu operacyjnego:
A oto wywołanie funkcji, która wyświetli okno komunikatu:
Składnię import PySimpleGUI as sg stosujemy w celu skrócenia zapisu w programie.
Innym przykładem biblioteki realizującej operacje graficzne jest turtle. Będziemy korzystać z niej przy tworzeniu rysunków fraktali.

Turtle bazuje na innej bibliotece – Tkinter. Jest to standardowa biblioteka języka Python, dostępna bez konieczności doinstalowania.
Środowisko IDLE, które wykorzystujemy do tworzenia programów, zostało opracowane z zastosowaniem właśnie tej biblioteki.

Oto przykładowy kod, który pozwala wyświetlić minimalne okno programu i zamknąć okno po naciśnięciu przycisku.
Słownik
element składni w określonym języku programowania, który w wyniku wywołania podprogramu zostaje utożsamiony (skojarzony) z określonym parametrem podprogramu
(ang. Graphical User Interface) interfejs pozwalający komunikować się z programem za pomocą widżetów; pozwala również na rysowanie
(ang. Integrated Developement Environment) zintegrowane środowisko programistyczne, które wspomaga pracę z kodem źródłowym; przykładowymi IDE są Atom, PyCharm, Visual Code i Sublime Text
w środowisku PyCharm narzędzie umożliwiające podgląd obiektów w czasie rzeczywistym, sprawdzanie ich wartości oraz typu
element składni w określonym języku programowania umożliwiający komunikację pomiędzy podprogramem wywołanym a programem wywołującym; parametry określa się wraz z deklaracją określonego podprogramu w jego nagłówku
(ang. Rapid Application Developement) metodyka udostępniająca zbiór narzędzi do szybkiego tworzenia aplikacji; programista rysuje w nim elementy interfejsu, zaś kod dodaje się tylko do poszczególnych obiektów; przykładowymi środowiskami RAD są QT Designer, Visual Studio, Lazarus i Delphi
standardowe urządzenie służące do wprowadzania danych; zazwyczaj jest to klawiatura; istnieją również niestandardowe wejścia (np. pliki)
standardowe urządzenie służące do przedstawiania wyników działania programu; zazwyczaj jest to ekran (w przypadku Pythona: aktywne okno terminala tekstowego); istnieją też niestandardowe wyjścia, takie jak plik