{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 1. Változók\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", " Egy változó egy olyan név, \n", " amelyhez valamilyen érték rendelhető.\n", "
\n", "\n", "\n",
" A név és az érték közé az \n",
" =
\n",
" értékadó műveleti jelet kell kitenni.\n",
"
\n", " A programozás során a változóra a \n", " neve alapján lehet hivatkozni.\n", "
\n", "\n", "\n", " Képzelj el egy dobozt: ráírsz egy \n", " nevet (címkét), és \n", " beleteszel valamit. A programban a név a címke, \n", " az érték a tartalom.\n", "
\n", "_
\n",
" jelet tartalmazhatnak.nev
, \n",
" szam_1
, \n",
" valtozo2
.\n",
" Valtozo
\n",
" és valtozo
\n",
" két különböző változónév.\n",
" _
\n",
" aláhúzásjelet használjuk.valtozo_nev
.\n",
" ' '
\n",
" (szimpla) vagy \n",
" \" \"
\n",
" (dupla) idézőjelek közé kell írni.\n",
" '.'
.\n",
" True
\n",
" (igaz), vagy \n",
" False
\n",
" (hamis).\n",
" \n",
" A \n",
" print()
\n",
" függvény használható a változók, \n",
" értékek vagy \n",
" kifejezések \n",
" kiíratására a konzolra.\n",
"
\n", " ⚠️ A változónak már ismertnek kell lennie a kiíratás előtt.\n", "
\n", "\n", "sep
\n",
" (*separator*): Meghatározza, hogyan választja el az értékeket a kimeneten.\" \"
(szóköz).\n",
" end
: \n",
" Meghatározza, hogy a print()
milyen karakterrel zárja a kimenetet.\"\\n\"
(új sor).\n",
" \n", " Ez egyszerűsíti a kódot és növeli a \n", " rugalmasságot, de fontos \n", " figyelmet fordítani a típusokra, hogy ne vezessenek hibákhoz.\n", "
\n", "\n", "\n",
" A változó aktuális típusát a \n",
" type()
\n",
" függvény segítségével lehet lekérdezni.\n",
"
int()
, \n",
" a lebegőpontos számra való átalakítása a \n",
" float()
, \n",
" a szövegre való átalakítása a \n",
" str()
\n",
" függvény segítségével hajtható végre.\n",
" \n",
" A logikai típusra való átalakításnál a \n",
" bool()
\n",
" függvényt használjuk. \n",
" Figyelni kell arra, hogy a \n",
" 0
\n",
" egész szám és a \n",
" 0.0
\n",
" lebegőpontos szám logikai értéke \n",
" False lesz, \n",
" minden más szám esetén \n",
" True-t kapunk.\n",
"
\n",
" Szöveg konvertálása esetén: az üres \n",
" \"\"
\n",
" szöveg False-t jelent, \n",
" míg nem üres szöveget átalakítva \n",
" True-t kapunk \n",
" (még akkor is, ha a szöveg tartalma pl. \"False\").\n",
"
Típus | \n", "Hamis | \n", "Igaz | \n", "
---|---|---|
logikai | \n", "False | \n", "True | \n", "
egész | \n", "0 | \n", "nem 0 (pl. 5, -3) | \n", "
lebegőpontos | \n", "0.0 | \n", "nem 0.0 (pl. 3.1, -5.4) | \n", "
szöveg | \n", "\"\" | \n", "nem üres (pl. \"Helló\") | \n", "
\n",
" A leggyakrabban alkalmazott művelet az \n",
" értékadás, amely az \n",
" =
\n",
" értékadó operátorral történik.\n",
"
\n",
" Ha több változónak szeretnénk értéket adni, akkor nem szükséges azokat külön sorban megadni, \n",
" egy sorban is elvégezhetjük. \n",
"
\n",
" ⚠️ Fontos: a bal oldalon és a \n",
" jobb oldalon azonos számú elemet kell megadni.\n",
"
\n", " Ezzel a megadással könnyedén felcserélhető két \n", " érték.\n", "
\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "a = 10\n", "b = 20\n", "\n", "# Csere hagyományos módszerrel\n", "tmp = a\n", "a = b\n", "b = tmp\n", "\n", "# Csere python-ban\n", "a, b = b, a" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Ha több változó is ugyanazt az értéket veszi fel, akkor alkalmazhatjuk a következő megadást:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "x = y = z = 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Matematikai műveletek" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Összeadás: 8\n", "Kivonás: 6\n", "Szorzás: 24\n", "Osztás: 3.3333333333333335\n", "Egész osztás: 3\n", "Maradék (modulus): 1\n", "Hatványozás: 16\n", "Abszolút érték: 7\n", "Kerekítés: 3.14\n" ] } ], "source": [ "# Összeadás\n", "osszeg = 5 + 3\n", "print(\"Összeadás:\", osszeg)\n", "\n", "# Kivonás\n", "kulonbseg = 8 - 2\n", "print(\"Kivonás:\", kulonbseg)\n", "\n", "# Szorzás\n", "szorzat = 4 * 6\n", "print(\"Szorzás:\", szorzat)\n", "\n", "# Osztás (eredmény mindig lebegőpontos szám lesz)\n", "hanyados = 10 / 3\n", "print(\"Osztás:\", hanyados)\n", "\n", "# Egész osztás\n", "egesz_osztas = 10 // 3\n", "print(\"Egész osztás:\", egesz_osztas)\n", "\n", "# Maradék (modulus)\n", "maradek = 10 % 3\n", "print(\"Maradék (modulus):\", maradek)\n", "\n", "# Hatványozás\n", "hatvany = 2**4\n", "print(\"Hatványozás:\", hatvany)\n", "\n", "# Abszolút érték\n", "abszolut_ertek = abs(-7)\n", "print(\"Abszolút érték:\", abszolut_ertek)\n", "\n", "# Kerekítés\n", "kerekitett = round(3.14159, 2)\n", "print(\"Kerekítés:\", kerekitett)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n",
" A matematikai műveletek esetén \n",
" (+
,\n",
" -
,\n",
" *
,\n",
" /
,\n",
" //
,\n",
" %
,\n",
" **
) \n",
" ha úgy adunk értéket a változónak,
hogy annak aktuális értékét fel kell használni \n",
" (pl.: a = a + 2
), \n",
" akkor az értékadás és a \n",
" művelet összevonható.\n",
"
\n",
"a = a + 2 → a += 2\n",
"a = a - 5 → a -= 5\n",
"a = a * 3 → a *= 3\n",
"a = a / 4 → a /= 4\n",
"a = a % 2 → a %= 2\n",
"a = a ** 2 → a **= 2
\n",
"
\n",
"\n",
" Pythonban több beépített matematikai függvény is található a \n",
" math
\n",
" modulban. \n",
" Ehhez először importálnod kell a \n",
" math
\n",
" modult.\n",
"
\n",
" Létezik komplex számok kezelésére alkalmas \n",
" cmath
modul is. \n",
" A képzetes rész jele a \n",
" j
. \n",
" ⚠️ A tényező és a j
karakter közé \n",
" nem kerülhet semmi.\n",
"
**
operátor precedenciája a legmagasabb a matematikai műveletek között.-
, +
, illetve bitenkénti ~
.*
, /
, %
– balról jobbra történik a kiértékelés.+
, -
– szintén balról jobbra történik a kiértékelés.&
^
|
<
, >
, <=
, >=
, ==
, !=
not
and
or
Műveleti jelek | \n", "Funkciók | \n", "
---|---|
() | \n", "Zárójel | \n", "
** | \n", "Hatványozás | \n", "
+x -x ~x | \n", "Plusz és mínusz előjelek, bitenkénti invertálás | \n", "
* / // % | \n", "Szorzás, Osztás, Egész osztás, Maradék | \n", "
+ - | \n", "Összeadás és kivonás | \n", "
<< >> | \n", "Bit eltolása balra, jobbra | \n", "
& | \n", "Bitenkénti ÉS | \n", "
^ | \n", "Bitenkénti kizáróvagy XOR | \n", "
| | \n", "Bitenkénti VAGY | \n", "
\n",
" == != > >= < <= \n", " is not is \n", " in not in\n", " | \n",
" Összehasonlító, Objektumazonosság ellenőrző, Tagságot vizsgáló műveletek | \n",
"
not | \n", "Logikai tagadás (NEM) | \n", "
and | \n", "Logikai ÉS | \n", "
or | \n", "Logikai VAGY | \n", "
\n", " Ha bizonytalanok vagyunk a \n", " kiértékelés sorrendjében, akkor használjunk \n", " zárójeleket, mert az abban található \n", " kifejezések értékelődnek ki először.\n", "
\n", "\n",
" Az input()
\n",
" függvény használható a felhasználói bemenet fogadására \n",
" Pythonban.\n",
"
\n",
" Fontos megjegyezni, hogy az \n",
" input()
\n",
" függvény által visszaadott érték mindig egy \n",
" szöveg lesz.\n",
"
\n",
" Ha számokkal szeretnél dolgozni, \n",
" akkor át kell alakítanod őket megfelelő típusra \n",
" (pl. int()
\n",
" vagy float()
\n",
" használatával).\n",
"