Jeśli masz za sobą wpis z instalacją Pythona oraz swój pierwszy skrypt – hello.py, to znaczy, że prawdopodobnie już znasz pierwsze pythonowe polecenie print czyli wyświetlanie napisów. Ale po kolei!
- skrypt – plik tekstowy o rozszerzeniu .py zawierający polecenia do wykonania
- ang. shell – jest interpreterem skryptów, a także interaktywną powłoką przez którą możemy (i zaraz będziemy) bezpośrednio wydawać polecenia Pythonowi.
Dalszą część dzisiejszych zadań możesz wykonywać własnie w tym pythonowym shellu, który otworzył się po uruchomieniu pliku, ale nie po to dodawaliśmy przy instalacji Pythona do zmiennych systemowych 😀
Windows:
Masz dwie opcje używać Wiersza poleceń (wyszukaj: cmd) lub PowerShell – zachęcam do używania tej drugiej opcji nie tylko ze względu na kolor 😉 Na pierwszy rzut oka różnica jest niewielka, dla tego kursu Pythona też nie, ale dla osób, które w ogóle będą chciały kiedyś korzystać z konsoli Powershell może okazać się dużo lepszym rozwiązaniem.
Linux i Mac OS X
Wyszukaj i uruchom Terminal.
Od tej chwili gdy piszę konsola lub shell mam na myśli w zależności od opcji, którą wybierasz: Wiersz poleceń/Powershell lub Terminal.
Twój Python w konsoli
W konsolę wpisz i kliknij enter:
python
Python 3.6.0 (…)
Type „help”, „copyright”, „credits” or „license” for more information.
>>>
Uruchomi się interpreter, który wypisał informacje o zainstalowanej wersji i prawach autorskich, a także znak zachęty(>>>).
Teraz możemy np. coś policzyć np. 3+3:
3 + 3
6
>>>
Możemy użyć Pythona jak kalkulator:
3*7
21
>>>
500 - 43 * 5
285
>>>
(1 - 7) * 7
-42
>>>
8 * 3.5
28.0
>>>
8 * 3.25
26.0
>>>
4**2
16
>>>
8 / 5
1.6
>>>
8 % 5
3
>>>
Zwróć uwagę, że liczby dziesiętne zapisujemy z użyciem kropki, a nie przecinka jak w języku polskim. W momencie, gdy mnożymy przez liczbę dziesiętną Python domyślnie zaokrągla nam do pierwszego miejsca „po przecinku” (a dokładniej po kropce), mimo że wynik jest całkowity.
Operatory warte zapamiętania:
- ** – znak potęgowania
- / – znak dzielenia, w językach programowania nie używa się, znanego ze szkoły dwukropka ” : „
- % – znak dzielenia modulo, czyli reszta z dzielenia
Tak poznaliśmy pierwszy rodzaj zmiennych – zmienne liczbowe oraz ich dwa typy – liczby całkowite(int) i liczby zmiennoprzecinkowe (float).
Napisy
Kolejną ważną zmienną są string’i czyli napisy. Definiujemy je za pomocą apostrofów(’) lub cudzysłowów(„). Inaczej Hello World nie zadziała:
Hello World
(…)
SyntaxError: invalid syntax
Python zwrócił błąd. Prawidłowo:
"Hello World"
Hello World
Co się stanie jeśli…
"napis"
'napis'
>>>
'napis'
'napis'
>>>
"to jest 'napis'"
"to jest 'napis'"
>>>
'i to tez jest "napis"'
'i to tez jest „napis”'
…to bez sensu.
To spróbuj zrobić jeszcze kilka przykładów
'doesn't'
(…)
SyntaxError: invalid syntax
>>>
"doesn't"
"doesn't"
>>>
'doesn\'t'
"doesn't"
Każdy string musi zaczynać się i kończyć tym samym znakiem – nie ważne czy użyjemy apostrofów ('…') czy cudzysłowów ("…").
Pierwszy przykład zwraca błąd – ponieważ znak apostrofu dla Pythona kończy string w miejscu 'doesn' a dalsza część jest poza i interpreter nie bardzo wie co z nią zrobić.
W drugim, wykorzystujemy cudzysłów, dzięki czemu apostrof w środku nie jest traktowany jako znak specjalny.
Natomiast w ostatnim, za pomocą ukośnika \
zaznaczamy, że '
jest znakiem specjalnym i w ten sposób możemy użyć apostrofu wewnątrz dwóch apostrofów oznaczających stringa – ufff… mam nadzieję, że wyjaśniłam to jasno.
Mówiąc językiem programistów, a mniej po polsku: escapujemy za pomocą backslasha i będziemy to robić z wszystkimi znakami specjalnymi. 😜
Co jeszcze możemy zrobić ze stringami?
Ciągi znaków możemy dodawać (inaczej łączyć, inaczej konkatenować) czy mnożyć:
'Kto to jest?'+'To Adam'
'Kto to jest?To Adam'
>>>
'Kto to jest?'+'"To Adam" odpowiedziała Magda'
'Kto to jest?”To Adam” odpowiedziała Magda'
>>>
'herbata' * 3
'herbataherbataherbata'
>>>
'herbata' + 3
(…)
TypeError: must be str, not int
O! Mamy nowy błąd! 😀
Do tej pory spotkaliśmy SyntaxError – czyli błąd w składni.
Teraz dodanie do string’a (str) liczby (int) powoduje pojawienie się błędu w typie TypeError. Rozwiązać możemy to na dwa sposoby:
'herbata' + "3"
'herbata3'
>>>
'herbata' + str(3)
'herbata3'
Jak widzisz możesz połączyć dwa napisy nawet jeśli jedne zapisujesz apostrofami, a drugie cudzysłowem. W drugim rozwiązaniu wykonałam konwersję typu int do string przy pomocy funkcji str().
Wyświetlanie napisów
Polecenie wyświetlania już znasz print().
print("Hello World!")
Hello World!
Możesz połączyć dwa lub więcej napisów w jednym poleceniu oddzielając je przecinkiem, a spacja między nimi doda się automatycznie:
print("Witaj", "co u Ciebie?")
Witaj co u Ciebie?
print() pozwala na wyświetlanie różnych typów, nie tylko napisów.
print(3)
3
>>>
print(3, 6, 8)
3, 6, 8
>>>
print("Ania ma:", 3, "lata")
Ania ma: 3 lata
Natomiast wstawienie samego print() wstawi znak nowej linii czyli da efekt entera:
print()
>>>
Znaki specjalne
Gdy chcieliśmy w napisie rozpoczętym apostrofem użyć apostrofu w środku napisu, a nie jako jego zakończenie, musieliśmy poprzedzić go znakiem „\”. Oto kilka innych znaków specjalnych, które mogą się przydać:
Znak specjalny | Znaczenie |
---|---|
\n | znak nowej linii, dodanie „entera” |
\t | dodanie tabulacji |
\’ | apostrof |
\” | cudzysłów |
\\ | ukośnik |
print("To jest\nnowe")
To jest
nowe
Wypróbuj je wszystkie! 😀
Przypisywanie wartości do zmiennej
Zanim przejdziesz do dalszej części wpisu przypomnij sobie pojęcie zmiennej z czasów szkolnych np. What is variable? (3min. KhanAcademy)
Zmienne w Pythonie mogą mieć prawie dowolne nazwy i przechowywać dowolne wartości, a także typy. Przypiszmy zmiennej a wartość 5, zmiennej b wartość 10, a do c przypiszmy efekt mnożenia tych zmiennych i zobaczmy efekt:
a = 5
>>>
b = 10
>>>
c = a * b
>>>
c
50
Zadanie 1 – kalkulator BMI
Jako, że kiedyś chciałam, by ten blog wspierał mnie w dążeniu do bycia bardziej fit, to zadanie będzie tematyczne – napiszemy prosty kalkulator BMI.
Jesteś w stanie napisać to samodzielnie, w razie czego przykładowe rozwiązanie znajduje się poniżej 😉
Po pierwsze przyda się wzór na BMI:
Już na pierwszy rzut oka widzimy, że będą nam potrzebne tylko 3 zmienne – wzrost, waga i BMI, do którego przypiszemy wynik.
np.
wzrost = 1.60 – w metrach
waga = 53 – w kilogramach
wzrost = 1.60
>>>
waga = 53
>>>
BMI = waga / (wzrost ** 2)
>>>
BMI
20.703124999999996
>>>
print("Twoje bmi wynosi:",BMI)
Twoje bmi wynosi: 20.703124999999996
Nie było trudne prawda?
W takim razie spróbuj samodzielnie całość napisać w jednej linii – wszystko wewnątrz print().
Zadanie 2 – dla chętnych
Jakiś czas temu pokazywałam jak obliczyć zapotrzebowanie kaloryczne (na dwa sposoby). Oblicz z pomocą pythona zapotrzebowanie kaloryczne:
b) siebie samej / samego.
Jeśli nie chce Ci się czytać wpisu to podaję wzory poniżej:
Podstawa: 10 x masa ciała + 6.25 x wzrost w cm – 5 x wiek + S
współczynnik S: dla kobiet = -161, dla mężczyzn= +5
Podstawę, czyli liczbę kalorii zużywaną na same procesy życiowe należy pomnożyć przez rodzaj aktywności fizycznej:
Praca siedząca, brak dodatkowej aktywności fizycznej | 1,2 |
Praca niefizyczna, mało aktywny tryb życia | 1,4 |
Lekka praca fizyczna, regularne ćwiczenia 3-4 razy (ok. 5h) w tygodniu | 1,6 |
Praca fizyczna, regularne ćwiczenia od 5razy (ok. 7h) w tygodniu | 1,8 |
Praca fizyczna ciężka, regularne ćwiczenia 7razy w tygodniu | 2,0 |
Rozwiązanie zadań znajdziesz na Githubie: Python #1 – wprowadzenie
Pierwszy raz spotykasz się z Githubem? Nic nie szkodzi!
Tutaj znajdziesz ➡️ kurs Git i Github od podstaw
Rozwiązania z opisem:
Zadanie 1 – BMI
Rozwiązanie w jednej linii – wewnątrz funkcji print():
print("Twoje bmi wynosi:", 53.0 / (1.6 ** 2))
Twoje bmi wynosi: 20.703124999999996
Zadanie 2 – dzienne zapotrzebowanie kaloryczne
Istnieją dwa wzory na obliczenie swojej podstawowej przemiany materii, którą należy przemnożyć przez nasz styl życia.
współczynnik S: dla kobiet = -161, dla mężczyzn= +5
Jako przykład obliczymy dzienne zapotrzebowanie kaloryczne dla 25-letniej kobiety o wzroście 1.7m i wadze 63kg, która uprawia sport kilka razy w tygodniu czyli jej współczynnik wynosi 1.6
wzrost = 170
>>>
waga = 63
>>>
wiek = 25
>>>
S = -161
>>>
PPM = 10 * waga + 6.25 * wzrost - 5 * wiek + S
1406.5
Do tego miejsca podstawiliłam nasze dane do wzoru na podstawową przemianę materii, teraz pozostaje przemnożyć wynik przez współczynnik wynikający ze stylu życia czyli 1.6
print("Dzienne zapotrzebowanie kaloryczne wynosi:", PPM * 1.6, "kcal")
Dzienne zapotrzebowanie kaloryczne wynosi: 2250.4 kcal
(wszystkie wpisy znajdziesz jako: Python kurs dla początkujących)
Przyznam, że wytłumaczyłaś to w bardzo przystępny sposób, czekam na kolejną część 🙂
Jak zrobiłaś BMI w jednej linii z funkcją print?? Bo coś mi nie chce wyjść…
rozwiązania zadań będą w nowym poście – jutro 😛
Ok. Dzięki za odpowiedź 🙂
Trafiłam tu zupełnie przez przypadek i bardzo się z tego przypadku cieszę. Jako osoba totalnie „zielona” wymyśliłam sobie, że nauczę się chociaż podstaw Pythona, tak po prostu dla siebie. Nawet nie marzyłam, że znajdę kurs napisany w tak przystępny sposób. Cudnie! <3
8/5 daje mi 1 :/ a nie 1.6
Co robię nie tak?
Możesz mięc inną wersję Python, a u mnie w 3.7 jest 1.6
Innym przypadku: 8 jak i 5 są liczbami całkowitymi więc całkowite dzielenie 8/5 da tylko 1 i resztę
możesz zapisać jako 8.0/5.0 (wtedy obie liczby są rozumiane jako zmiennoprzecinkowe) lub np float(8)/5 – wystarczy, że jedna z liczb będzie float – zmiennoprzecinkowa 😉
Sprawdź wersję pythona
Ciekawe jest to, że różne interpretery (lub kompilatory wg innych poglądów) Pythona różnie traktują takie wyrażenie jak 8/5. Mój linuksowy python 3.5.2 uważa te liczby za integery i wykonuje dzielenie całkowitoliczbowe. Natomiast np. interpreter online na stronie:
https://repl.it/repls/DeadTubbyCores
dzieli rozbijając na ułamki.
Warto by w tym artykule, w punkcie o operatorach, podać operator dzielenia całkowitoliczbowego, który w Pythonie wygląda tak: //
A kurs bardzo mi się podoba jak na razie 🙂
W zadaniu z obliczeniem zapotrzebowania jest błąd. We wzorze podajesz ze nalezy odjąć pieciokrotnosc wieku
W zadaniu ją dodajesz
a zobacz takie coś:
>>> a=8/5
>>> a
1.6
>>> a%1
0.6000000000000001
>>> a%a
0.0
>>>
Dziękuję bardzo za ten tutorial. Wszystko podane prosto i zrozumiale. Większość kursów „od zera” ludzie zaczynają od strzelania hasłami mało zrozumiałymi dla innych, a Ty dobrze wbijasz to do bani. Tak trzymaj 🙂
ciekawe, bo u mnie:
>>> 8/5
1.6
A po co we wzorze BMI = weight/(height**2) dajesz nawias, skoro potęga jest i tak pierwsza w kolejności rozwiązywania równania?
Masz rację 😛 zapis jak wyżej jest czytelniejszy „dla ludzi” 😛 ale czy zapiszesz z nawiasem czy bez Python sobie poradzi 😉
Dopiero zaczynam z Pythonem,ale tak sie zmeczylam nauka po angielsku,ze az mi sie odechcialo.Znam jezyk,ale myslenie nad nowym calkiem slownictwem plus zrozumienie o co w tym Pythonie chodzi,to za duzo na poczatek.Ciesze sie,ze znalazlam tego bloga,az mi sie rozjasnilo w glowie :)Bardzo,bardzo przystepnie wszystko opisane.
Dzięki wielkie. Świetna robota.
Wkradł się mały błąd:
W jednym miejscu mamy:
10 x masa ciała + 6.25 x wzrost w cm – 5 x wiek + S
w innym, w kodzie:
PPM = 10 * waga + 6.25 * wzrost + 5 * wiek + S
Też to zauważyłam i troszkę zgłupiałam 😉
Dlatego różne wyniki wychodzą i chyba musi być „-„
Dzięki
Hej! Mam ientyczne odczucia jak Aya – zaczynanie nauki Pythona po angielsku męczyło mnie okropnie. I trafiłam tu – jest przyjemnie, przystępnie, zrozumiale 🙂 Mam 34 lata i postanowiłam zmienić branżę, zaczynam od nauki Pythona i…. boję się bardzo, bo to IT to jednak zupełnie inny świat w zestawieniu z moją dotychczasową pracą. Jak na razie ucieszyło mnie ogromnie „hello world” 😀 A teraz biorę się do dalszego czytania i działania 🙂
Boże! Niby takie proste, ale jak wychodzi dobrze to tak mi się mordka śmieje, że rodzinka myśli czy już po biały kaftanik nie dzwonić hahahahaha
hej.
Raczkuję w Pythonie, zatem mój kod jest długi i bardzo kanciasty:-). Poniżej zamieszczam cały, wystarczy uruchomić, a on sam zapyta o dane. Nic wielkiego, ale radochy miałem ile wlezie:
waga = int(input(„Podaj swoją wagę: „))
wzrost = int(input(„Podaj swój wzrost: „))
wiek = int(input(„Podaj swój wiek: „))
s = input(„Podaj swoją płeć w formacie M lub K: „)
S = 0
if s == „M”:
S = 5
else:
S = -161
BMI = waga/((wzrost/100)**2)
aktywność = {„a”:1.2, „b”:1.4, „c”:1.6, „d”:1.8, „e”:2.0}
p = input(„””Jaką pracę wykonujesz? Podaj porszę odpowiednią literę:
na:Praca siedząca, brak dodatkowej aktywności fizycznej.
nb:Praca niefizyczna, mało aktywny tryb życia.
nc:Lekka praca fizyczna, regularne ćwiczenia 3-4 razy (ok. 5h) w tygodniu.
nd:Praca fizyczna, regularne ćwiczenia od 5razy (ok. 7h) w tygodniu.
ne:Praca fizyczna ciężka, regularne ćwiczenia 7razy w tygodniu
nn Podaj a lub b lub c lub d lub e: „””)
ap = aktywność[p]
#print(S) – tylko kontrolnie, aby mieć pewność że warunek działa
PPM = 10 * waga + 6.25 * wzrost – 5 * wiek + S
print(„///////////////////////////////////////////////////”)
print(„Twoja masa ciała BMI to: ” + str(round(BMI,2)))
print(„——————————-„)
print(„Współczynnik PPM to: ” + str(PPM))
kalorie = PPM * ap
print(„——————————-„)
print(„Twoje zapotrzebowanie kalorie to: ” + str(kalorie))
Cześć. W Pythonie 3.7.0 wychodził błąd i dopiero w takiej formie się uruchomił:
waga = int(input(„Podaj swoją wagę: „))
wzrost = int(input(„Podaj swój wzrost: „))
wiek = int(input(„Podaj swój wiek: „))
s = input(„Podaj swoją płeć w formacie M lub K: „)
S = 0
if s == „M”:S = 5
else:S = -161
BMI = waga/((wzrost/100)**2)
aktywność = {„a”:1.2, „b”:1.4, „c”:1.6, „d”:1.8, „e”:2.0}
p = input(„””Jaką pracę wykonujesz? Podaj porszę odpowiednią literę:
na:Praca siedząca, brak dodatkowej aktywności fizycznej.
nb:Praca niefizyczna, mało aktywny tryb życia.
nc:Lekka praca fizyczna, regularne ćwiczenia 3-4 razy (ok. 5h) w tygodniu.
nd:Praca fizyczna, regularne ćwiczenia od 5razy (ok. 7h) w tygodniu.
ne:Praca fizyczna ciężka, regularne ćwiczenia 7razy w tygodniu
nn Podaj a lub b lub c lub d lub e: „””)
ap = aktywność[p]
#print(S) – tylko kontrolnie, aby mieć pewność że warunek działa
PPM = 10 * waga + 6.25 * wzrost – 5 * wiek + S
print(„///////////////////////////////////////////////////”)
print(„Twoja masa ciała BMI to: ” + str(round(BMI,2)))
print(„——————————-„)
print(„Współczynnik PPM to: ” + str(PPM))
kalorie = PPM * ap
print(„——————————-„)
print(„Twoje zapotrzebowanie kalorie to: ” + str(kalorie))
Witam,
Pytanko odnośnie tego „programu”, który napisaliście.
W jakim programie piszecie bo ja jak pisze w Python 3.7 w konsoli to zaraz po napisaniu pytania muszę udzielić odpowiedzi.
Czy jest jakaś możliwość żeby dopiero po skończeniu wprowadzania kodu uruchomił się jakiś kompilator który będzie po kolei zadawał pytania?
Jesteś w trybie interaktywnym to dlatego 😉 Zajrzyj do lekcji startowej Python start tam było utworzenie pliku i uruchomienie go za pomocą Pythona 😉
Kodu Pythona się nie kompiluje 😛
Jestem zupełnie zielona i zastanawiam się dlaczego w komendzie: print(„Ania ma:”, 3, „lata”) stosuje się te przecinki i cudzysłów po ma” i przed „lata zamiast na początku i na końcu tylko, skoro i tak po wciśnięciu enter wychodzi to samo ?
W tym momencie 3 jest traktowane jako liczba, a nie jako tekst.
Cześć, mam problem. Po dwukrotnym kliknięciu w plik hello.py który utworzyłem konsola na chwilę się pojawi i znika ;/ to samo się dzieje kiedy wejdę w programy i chcę ją otworzyć. co jest nie tak ?
Dodaj do swojego kodu linijkę:
Dzięki! 😀
Jest to dopiero mój pierwszy kurs tutaj i już się dobrze bawie :v
Nie wiedziałem że programowanie jest może być takie proste :d
Jeśli zmienna składa się z więcej niż 2 wyrazów, które są rozdzielone to jak to zapisać by móc przyporządkować takiej zmiennej wartość?
Nie do końca rozumiem czy chodzi ci o nazwę zmiennej typu „to ja”
np.
Czy chcesz do dwóch zmiennych przypisać dwa wyrazy np.
W pierwszym przypadku to po prostu kwestia zasad nazywania zmiennych w pythonie – nie można używać spacji 😉
Kolejna lekcja jest o typach i zmiennych – powinno się wszystko wyjaśnić 🙂
Skomplikowane gdzie te spacje stawiać i nawiasy, przynajmniej na początek… ;P
Cześć 🙂 Mam na imię Kasia i właśnie rozpoczynam przygodę z programowaniem. Myślę, że Python będzie dobry na początek, więc wielkie dzięki za ten kurs! Wydaje się bardzo przystępny jak na razie i super, że zawiera od razu ćwiczenia utrwalające wiedzę.
Docelowo chciałabym się zająć pisaniem stron internetowych, szczególnie interesuje mnie język Ruby. Czy planujesz zrobić podobny kurs właśnie na ten język? Ile Twoim zdaniem może zająć nauka podstaw?
Kurs Rubiego jest „in progress” 😉 wyglądaj mojej współpracy z eduweb.pl ;P powinna pojawić się na jesień
Witaj Rita. Przy opisie funkcji „print()”. Można dodać informację, że znak przecinka „,” użyty w komendzie print(tekst, liczba, wartość przechowywana w zmiennej) informuje komendę, że ma wyświetlić kolejną „rzecz”. Dlatego w ostatnim przykładzie:
>>> print(„Ania ma:”, 3, „lata”)
Ania ma: 3 lata
Brak przecinków. Jednocześnie drugi przykład powinien też nie mieć przecinków w wyświetlonym napisie:
>>> print(3, 6, 8)
3 6 8
Dziękuję, za wysiłek włożony w pisanie bloga. Nie jest to proste pisanie w sposób zrozumiały czegoś komuś, gdy dla nas jest to już rzeczą oczywistą.
Po prostu grzecznie i sumiennie sobie przepisywałem przykłady i to zauważyłem.
Pozdrawiam serdecznie
słuszna uwaga! dodam informację o ciekawostkach z wyświetlaniem 😉
Bardzo dziękuję za pierwszą lekcję w życiu 😉 W zadaniu drugim jest mały błąd + 5 * WIEK, czy – 5 * WIEK?
Niemniej fun jest!
Tam ma być chyba „minus”. Dopiero wtedy wychodzi w miarę realistyczny (nie przesadzony) wynik.
Mam pytanie, dlaczego do wzoru na PPM (zad2) gdzie jest -5x panie wstawiła +5x??? Oczywiście być może walnąłem teraz w płot, bo jest to moja 1 godzina z pythonem ale wolę wiedzieć.
Pani Rita się po prostu pomyliła i dlatego dała raz tak, raz tak. Z innych komentarzy wynika, że tam powinno być „minus”.
Hello, niestety jako kalkulatora Pythona bym nie używał. 8/5 daje tu 1, 6/4 również 1. Liczyłem, że podstawy będą łatwe.. Na razie zatrzymuję się i szukam pomocy w wujka 😉
Tego typu działanie nie wyświetla całościowego wyniku dzielenia, jakie znamy z codziennego życia. Python domyślnie wyświetla wynik dzielenia, które nazywa się chyba całkowitoliczbowym. Czyli np. w odniesieniu do Twojego pierwszego przykładu pokazuje, ile razy „5” mieści się w „8”. A w ósemce zmieści się jedna „cała” piątka. Podobnie w liczbie „6” zmieści się jedna cała czwórka, itd.
Ale uwaga – bodaj nie każda wersja Pythona domyślnie będzie wyświetlać to tak, jak napisałem powyżej. Np. wersja, którą mam zainstalowaną, wyświetla wynik dzielenie „normalnie”, czyli np. 6/4 wychodzi „1.5”.
Sam jestem początkujący i dopiero zacząłem ten kurs, więc dzielę się tylko tym, co ogólnie kojarzę, bo gdzieś to już wyczytałem. A akurat to się chyba zawiera w komentarzach do tej lekcji. Widzę z krótkiego doświadczenia, że warto zapoznawać się z komentarzami internautów, bo można dowiedzieć się wielu ciekawych rzeczy lub też uzyskać wyjaśnienie jakiejś wątpliwości.
Więc – odnośnie tej kwestii – w pierwszej kolejności odsyłam do komentarzy. 🙂 I pozdrawiam!
Albo uzupełniając wypowiedź poprzedniej osoby: wykonaj ten kod i myślę, że się rozjaśni co i jak:
print(„int() liczby 7.2 zwraca:\t\t\t\t\t\t”,int(7.2),”\nfloat() liczby 7.2 zwraca:\t\t\t\t\t”,float(7.2),”\nint() dzielenia 7 przez 2 zwraca:\t\t\t”,int(7/2),”\nfloat() dzielenia 7 przez 2 zwraca:\t\t\t”,float(7/2),”\n% czyli reszta z dzielenia 7 przez 2 zwraca:”,(7%2))
Programowanie to dla mnie totalna nowość. Przy „przypisywaniu wartości do zmiennej” dopisałabym, że spacje są ważne 🙂 Ja za pierwszym razem wpisałam w pierwszym wierszu bez spacji i pokazało mi błąd 🙂 Może to jest „oczywista oczywistość”, ale jak widać zdarzają się „oporni” jak ja 😉
w kolejnym poście są wyjaśnione typy i zmienne, tutaj raczej jest zabawa w uważne przepisywanie jako rozgrzewka przed już dokładnym zagłębianiem się w meandry Pythona ;D
Jak odpalić tego pythona w powershell bo nie działa
Dopiero zaczynam naukę. Dzięki za pierwszą lekcję. Zajrzę tu jutro 🙂
Dzięki 🙂
Dzięki za kurs. Super. Cały pomysł i idea ,szacun. Uczę się razem z synem. Tak trzymaj!
Dzięki wielkie
Cześć, mam taki problem, że w Pythonie 2.6 wszystko super działa, w Pythonie 3.6 wyskakuje mi błąd w miejscu obliczania BMI [ (bmi = waga / (wzrost ** 2) ], poniżej cały kod:
Ktoś ma jakiś pomysł? Dodam, że próbowałam już zapisać tą potęgę jako bmi = waga / (wzrost ** int(2)) i też nie działa 🙁 Typ błędu to "typeerror".
OLAAA. Nie jestem ekspertem, bo jestem w trakcie przesiadki z VBA na Python 3.7 i dopiero zaczynam.
Nie wiem, z kiedy jest Twój wpis, ale moja odpowiedź może przyda się komuś innemu, kto będzie to czytał.
W Twoim przykładzie:
waga = input()
Pythonowi „wydaje się”, że wprowadzona przez użytkownika waga to string (czyli tekst), A Ty chcesz, aby Python zinterpretował wprowadzoną wagę, jako liczbę całkowitą (czyli int), więc powinno być:
waga = int(input())
Z kolei w przypadku:
wzrost = input()
Pythonowi też „wydaje się”, że to string (czyli tekst), ale Ty chcesz wprowadzić liczę rzeczywistą (z przecinkami, tj. kropkami w Pythonie np. 1.6). Czyli musisz „powiedzieć Pythonowi”, że wartość wprowadzoną przez użytkownika, ma potraktować jako liczbę rzeczywistą, czyli float:
wzrost = float(input())
A poniżej cały, poprawiony kod. U mnie po tych małych poprawkach Twój kod już działa 🙂
Dzięki za kurs. Korzystam z niego i podoba mi się. Mam nadzieję że będzie więcej 🙂
dzieki!
Do tej pory robilem tylko w c++ więc zaskoczony jestem jak bardzo domyślny jest python. Jednak gubie sie bez wyraźnych instrukcji na ekranie
Cześć, fajny kurs to na początek:)
Utknąłem niestety na BMI, wpisuję wszystko jak należy i wyrzuca mi:
>>> wzrost = 1,78
>>> waga = 90
>>> BMI = waga / (wzrost ** 2)
Traceback (most recent call last):
File „”, line 1, in
TypeError: unsupported operand type(s) for ** or pow(): 'tuple’ and 'int’
Może zaznaczyłam to trochę słabo, ale należy używać do liczb zmiennoprzecinkowych notacji angielskiej czyli z kropką!
wzrost = 1,78
powinien wyglądać :wzrost = 1.78
.Tak jak Python zwrócił liczby po przecinku to dla niego tuple czyli krotka. O prostych kolekcjach będzie w innym wpisie na blogu.
Ja Cię, jeśli reszta też będzie tak super wytłumaczona to chyba się tym bardziej zainteresuję xD Cudo <3
Dobra robota. Biore sie do pracy 🙂
Bardzo spoko, bez zbadnego gadania
Bardzo dobry pomysł na naukę i uświadamianie społeczeństwa 🙂
Przyjemny kurs.
Dziękuję! :*
przydatne,zaczynam naukę,dziękuję ci.
super napisane,
ale zamiast wyniku wychodzi mi po prostu kolejny wiersz
super nie fajne ale mi się podoba
Wszystkie zadanie zrobione, nie było to ciężkie, wszystko fajnie i logicznie tłumaczysz 🙂
Świetna lekcja. Dziękuję 🙂
Dzięki wielkie! Najlepszy kurs.
Dzięki! Właśnie zaczynam zabawę z programowaniem i na początek wybrałam właśnie Pythona 🙂 Wszystko jasno wytłumaczyłaś, te pierwsze zadania dały mi ogromną satysfakcję. I ta grafika z „pytonikiem” jest urocza 😀
Jezu ale zajebisty blog… I dzięki za Pythona! Uczę się od Ciebie!
Dziękuję za stworzenie kursu :). Od dłuższego czasu chciałem zabrać się za naukę programowania. Twój kurs mnie do tego zmotywował.
Cześć 🙂 dzięki za możliowość nauki! Potrzebuję pomocy… Jestem kompletnym laikiem w tym temacie:) Mam problem ze spacją. Przecinek mi jej nie tworzy. Robi mi się za każdym razem coś takiego :
>>> print(„Twoje bmi wynosi:”,BMI)
(’Twoje bmi wynosi:’, 20.703124999999996)
Będę wdzięczna za pomoc!
Najlepsze+ darmowe tłumaczenie. na niektórych płatnych kursach kilka razy trzeba przeczytać, żeby cokolwiek zrozumieć, tutaj wystarczy raz. Świetny kurs, na pewno go polecę 🙂
Cześć!
Dopiero zaczynam i mam zagwozdkę. Wpisuję kod drugiego zadania:
i IDLE nie oblicza mi zapotrzebowania, tylko prezentuje pustą linijkę. Dlaczego?
Dodaj wyświetlanie wyniku za pomoca print 😉
Piszę tak samo w windows powershellu i też mam pustą linijkę. Co mam zrobić? Proszę o pomoc 🙂
Dlaczego
8%5 =3 reszta z dzielenia to 6
wykorzystałem wiedzę MIKE
>>> a=8/5
>>> a
1.6
>>> a%1
0.6000000000000001
>>> a%a
0.0
>>>
ale nie wiem nadal czemu >>> 8 % 5
to 3
Chyba warto powtórzyć czym jest reszta z dzielenia
8 / 5 = 1 + reszta 3, bo: (1 * 5) + 3 = 8
dlatego
8 % 5 = 3
Inny przykład
7 % 3 = 1 -> 7/3 = 2 i resztę 1, bo: (2*3) + 1 = 7
12/5 = 2 + reszta 2, bo (2 * 5) + = 12
Witaj
Jestem początkującym programistą. przerobiłem inny kurs a na ten trafiłem przypadkowo i jak na razie mi się podoba – fajnie wyjaśniony. Jak zauważyłem każdy uczący trochę inaczej do tego podchodzi i troszeczkę inaczej tłumaczy(daje inne przykłady/ćwiczenia) co w efekcie jest dobre dla nas – uczniów 🙂
Dzięki za kurs. Właśnie takiego wprowadzenia szukałem 🙂
Przy okazji czytając komentarze (z nich też można się czegoś nauczyć przy okazji) zauważyłem, że niektórzy nie do końca łapią po Twoim opisie czym jest int, czym jest float, czym %. Myślę, że najlepiej tłumaczy to wynik działania tej linii:
print(int(7.2),float(7.2),int(7/2),float(7/2),(7%2))
Ewentualnie jeśli dla kogoś to mało czytelne, można tak:
print(„int() liczby 7.2 zwraca:\t\t\t\t\t\t”,int(7.2),”\nfloat() liczby 7.2 zwraca:\t\t\t\t\t”,float(7.2),”\nint() dzielenia 7 przez 2 zwraca:\t\t\t”,int(7/2),”\nfloat() dzielenia 7 przez 2 zwraca:\t\t\t”,float(7/2),”\n% czyli reszta z dzielenia 7 przez 2 zwraca:”,(7%2))
Czytelniejsze w wyniku, bo w kodzie nie bardzo. Zastanawiam się jak prościej to zapisać, aby nie sadzić tylu tabulatorów. Tym bardziej, że nie wiem czy u innych też będzie równo. U mnie było 😀
Idę po kolei więc nie wiem, ale już na zapas – przydałby się taki rozdział z dobrymi praktykami kodowania, aby zapisy były czytelne. Można wszystko upchać w jednej linii tylko pytanie czy warto.
Ciekawy kurs z przykładami zadań dotąd uczyłem się jawy, ale Python wydaje się bardziej przejrzysty
Dzień dobry,
pięknie dziękuję za kurs. Przy okazji pierwsze pytanie: dlaczego w drugim zadaniu przy wpisywaniu wzrostu z kropką, tj. 1.70, wychodzi zły wynik, a przy 170 poprawny?
Adam
Poleciłem kurs znajomej która nigdy nie programowała, wyłożyła się już na pierwszej instrukcji.
Wpisz:
python
Python 3.6.0 (…)
Type „help”, „copyright”, „credits” or „license” for more information.
>>>
Dla nas to oczywiste, a ona myślała, że wszystko co jest w szarym polu należy wpisać.
Fajnie byłoby jednak to poprawić i oddzielić komendy od outputu.
Wpisz: python i naciśnij Enter 😉
Ale się jaram swoim pierwszym kodem xD
Dobra robota, nie rezygnuj z dalszych części i rozwoju bloga.
mi nawet to a*b nie wyszło. Nie pokazało się nic
z przyjemnością się to czyta ! 🙂
Naprawdę bardzo się cieszę że znalazłem tą stronę wszystko jest fajnie napisane ale jest mały problem a dokładniej zalecam danie przejścia do następnego postu nad komentarzami bo muszę zjechać na sam dół.
witam, wkradł się mały błąd:
„print() pozwala na wyświetlanie różnych typów, nie tylko napisów.
>>> print(3)
3
>>> print(3, 6, 8)
3, 6, 8 >> print(„Ania ma:”, 3, „lata”)
Ania ma: 3 lata
# -*- coding: utf-8 -*-
import os
import sys
import math
print(„Oblicz dzienne zapotrzebowanie kaloryczne”)
name = input(„Podaj swoje imię: \n”)
if name[-1] == „a”:
name = int(-161)
else:
name = int(+5)
height = int(input(„Podaj swój wzrost w centymetrach: \n”))
weight = int(input(„Podaj swoją wagę w kilogramach: \n”))
age = int(input(„Podaj swój wiek \n”))
ppm = (10 * weight) + (6.25 * height) – (5 * age) + name
print(„Wybierz aktywnosc”)
print(„Praca siedząca, brak dodatkowej aktywności fizycznej \n [a]”)
print(„Praca niefizyczna, mało aktywny tryb życia \n [b]”)
print(
„Lekka praca fizyczna, regularne ćwiczenia 3-4 razy print(ok. 5h) w tygodniu \n [c]”)
print(
„Praca fizyczna, regularne ćwiczenia od 5razy (ok. 7h) w tygodniu \n [d]”)
print(„Praca fizyczna ciężka, regularne ćwiczenia 7 razy w tygodniu \n [e] „)
activity = input()
if activity == „a”:
activity = 1.2
elif activity == „b”:
activity = 1.4
elif activity == „c”:
activity = 1.6
elif activity == „d”:
activity = 1.8
elif activity == „e”:
activity = 2.0
print(„Dzienne zapotrzebowanie kaloryczne wynosi:”, ppm * activity, „kcal”)
Działa!!!! 😀 Czemu odrazu nie zacząłem od pythona
Dzięki za wpis. Pozdrawiam
Zaczynam od zera. Wszystko rozumiem 🙂 Cieszę się, że ktoś jest taki dobry i robi coś dla innych. Dziękuję
Super wytłumaczone 😀
Zaczęłam pracę z Pythonem i mi się to bardzo podoba. Mój aktualny kierunek studiów będzie go wymagał. Dzięki Tobie stało się to prościejsze! 😀
Twój kurs jest moim zdaniem jednym z lepiej wytłumaczonych. Kiedyś zaczęłam się uczyć z innych stron, ale ta przemawia do mnie najbardziej i teraz po kilku latach przerwy robię kolejne podejście do Pythona. Czy zamiast PowerShell można używać Visual Studio Code? Jest jakaś różnica?
Super wytłumaczone 🙂
Świetnie opisana lekcja. Dopiero zaczynam swoją przygodę z Pythonem, jak i z programowaniem w ogóle i taki tutorial jest dla mnie na wagę złota 😉
Dzięki <3
Bardzo fajnie prowadzenie pierwszych kroków w kodowaniu.
W zadaniu pierwszym wpisuję wszystko to samo a linijkę BMI = waga / (wzrost ** 2) uważa za błędną. Co może być powodem ?
Super. Dobrze wytłumaczone postawy. Fajnie się czyta.
Cześć! Robię kalkulator zapotrzebowania kalorycznego, może najpierw wkleję kod, który dotychczas mam, aby wytłumaczyć, o co mi chodzi:
Chciałabym, aby najpierw obliczał PPM uwzględniające wybór płci, a potem na tej podstawie obliczał zapotrzebowanie po wyborze stopnia aktywności fizycznej. I tu trochę utknęłam – czy dałoby się temu obliczonemu PPM nadać jakąś „nazwę”? Jedną dla obydwu możliwości wyboru – K i M. Tak, aby potem po wyborze aktywności móc wyliczone PPM pomnożyć przez odpowiedni współczynnik (if, elif, …).
Pierwszy kurs za mną, zapowiada się interesująco. 😉 To moje pierwsze spotkanie z programowaniem. 😉 Nie wiem tylko jak uruchomić Python3 na Macu? Chyba na konsoli jest 2. Pozdrowionka!
Trafiłam tu przez przypadek pytając wujka Googla jak zabrać się za naukę Pythona jeśli jestem w temacie zupełnie zielona. Fajnie, zamierzam zostać na dłużej 🙂
Jak na razie fajne:)
Hejo, na razie rozumiem, a czemu robi się takie coś:
Jeśli nie widać, o co mi chodzi, chodzi o to, że w drugim przypadku tabulacja się zrobiła, ale w pierwszym mam regularną spację, znak specjalny z nieznanej mi przyczyny nie 'odpalił’:P Czemu? Nie chodzi o bliskość polskiego nietypowego znaku ani bliskość literki 's’ (pomyślałam, że może '\ts’ to jakiś inny znak specjalny), więc o co?
plec=input („Podaj swoją płeć – M czy K ?” )
wiek= int(input („Podaj swój wiek: „))
masa= float(input („Podaj swóją masę: „))
wzrost=float(input („Podaj swój wzrost w cm: „))
aktywnosc=input („Jaka jest Twoja aktywność fizyczna? \n”
„a – Praca siedząca brak dodatkowej aktywności fizycznej? \n”
„b – Praca niefizyczna, mało aktywny tryb życia \n”
„c – Lekka praca fizyczna, regularne ćwiczenia 3-4 razy (ok. 5h) w tygodniu \n”
„d – Praca fizyczna, regularne ćwiczenia od 5 razy (ok. 7h) w tygodniu\n”
„e – Praca fizyczna ciężka, regularne ćwiczenia 7 razy w tygodniu: „)
if aktywnosc == „a”:
aktywnosc= 1.2
elif aktywnosc == „b”:
aktywnosc= 1.4
elif aktywnosc == „c”:
aktywnosc= 1.6
elif aktywnosc == „d”:
aktywnosc= 1.8
elif aktywnosc == „e”:
aktywnosc= 2.0
if plec==”K”:
Podstawa=10*masa+6.25*wzrost-5*wiek-161
print(f”Twój podstawowy metabolizm wymaga: {Podstawa} Kcal”)
zapotrzebowanie=Podstawa*aktywnosc
print(f”Twoje zapotrzebowanie energetyczne wynosi: {zapotrzebowanie} Kcal”)
elif plec==”M”:
Podstawa=10*masa+6.25*wzrost-5*wiek+5
print(f”Twój podstawowy metabolizm wymaga: {Podstawa} Kcal”)
zapotrzebowanie = Podstawa * aktywnosc
print(f”Twoje zapotrzebowanie energetyczne wynosi: {zapotrzebowanie} Kcal”)
Kurs znalazłem zupełnie przypadkiem, co mnie bardzo raduje, bo próbowałem nauczyć się JAVA i nic a nic nie wchodziło mi do głowy, a tu…. mam idealne wprowadzenie do świata kodowania! I to przez kobietę co dodatkowo mnie motywuje do nauki 🙂 Pozdrawiam!!!
Prosto, jasno i czytelnie. Nawet taki dziaders jak ja rozumie 🙂
Mega dziękuję ci za ten kurs! Tyyle szukałam czegoś po polsku j darmowego….
Fajny i prosty kurs Pythona
Miło się to czyta
Dzięki wielkie, w końcu brat przestanie mi zarzucać że tylko na tym scratchu siedzę
Dziekuje za kurs pythona- jesteś Boska
Dziekuję za najlepszy kurs pythona! Czekam na kontynuację
Tomasz Wojdak, mi pokazywał błędy, ale popracowałem trochę nad tym i w efekcie teraz jest poprawnie:
waga = int(input(„Podaj swoją wagę: „))
wzrost = int(input(„Podaj swój wzrost: „))
wiek = int(input(„Podaj swój wiek: „))
s = input(„Podaj swoją płeć w formacie M lub K „)
s = 0
if s == „M”:
s = s+ 5
else:
s = s-161
aktywnosc = {„a”:”1.2″, „b”:”1.4″, „c”:1.6 , „d”:1.8, „e”:2.0}
p = input(„Jaką pracę wykonujesz? Podaj porszę odpowiednią literę: \n a:Praca siedząca, brak dodatkowej aktywności fizycznej. \n b:Praca niefizyczna, mało aktywny tryb życia.\n c:Lekka praca fizyczna, regularne ćwiczenia 3-4 razy (ok. 5h) w tygodniu. \n d:Praca fizyczna, regularne ćwiczenia od 5razy (ok. 7h) w tygodniu. \n e:Praca fizyczna ciężka, regularne ćwiczenia 7razy w tygodniu \n Podaj a lub b lub c lub d lub e: „)
ap = aktywnosc[p]
bmi = waga/((wzrost/100)**2)
#print(S) – tylko kontrolnie, aby mieć pewność że warunek działa
ppm = (10 * waga + 6.25 * wzrost – 5 * wiek + s)
print(„///////////////////////////////////////////////////”)
print(„Twoja masa ciała BMI to: „, round(bmi,2))
print(„——————————-„)
print(„Współczynnik PPM to: „, ppm)
kalorie = (ppm * float(ap))
print(„——————————-„)
print(„Twoje zapotrzebowanie kalorie to: ” , kalorie)
Witam. Chciałem podziękować Pani za ten kurs czegoś takiego właśnie szukałem. Kawał dobrej roboty, że się tak wyrażę 🙂
Mega fajnie opisane i praktyczne zadania. Nie tylko wiem co coś robi i jak tego użyć, ale przede wszystkim widać po co 🙂
dziękuję – komentarz w celu upewnienia Cię, że dobrze robisz i Twoja praca się przydaje ludziom 😀
Pozdrawiam i miłego dnia życzę, Szanowna Pani.
Zawsze mi to wydawało skomplikowane, jednak to jest proste, tylko dlatego że wcześniej nie mogłem zrozumieć. Dzięki za ten blog!
świetnie wytłumaczone 😀
Dziękuję za pomoc. To najlepszy darmowy tutorial – przeszukałem sieć i nie przesadzam. Może wreszcie próba nauki programowania się uda:)
Bardzo fajne praktyczne zadanka. Pozdrawiam 🙂
Cześć, wielkie dzięki za kurs! O kodowaniu nie wiem nic, nigdy nie słyszałam o PowerShell, ale przez poczatek udało mi się przejść – najwidoczniej nie taki diabeł straszny!:) Będę kontynuować.
Bardzo dziękuję. Prosto i klarownie wytłumaczone podstawy konsoli pythona.
Z przyjemnością „idę” do kolejnej lekcji.
Pozdrawiam
Piotr
Na razie super – dzięki! 🙂
Boski kursik 😉
Jak to skrócić?
Dziś zacząłem zabawę z Pytonem,, aż miło popatrzeć jak się udaje, Miałem problem z „,” i „.”, wstawiałem różne znaczniki i coś dziwnego mi wyskakiwało, nie obliczało poprawnie, wystarczyło pozmieniać ,poobserwować i wszystko się wyjaśniło
Super kurs Python, dziękuje i pozdrawiam.