176 lines
5.0 KiB
Plaintext
176 lines
5.0 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"### Előadás anyag\n",
|
|
"Nézzük meg a 9. heti előadás anyagát tartalmazó Jupyter notebook (09_ea.ipynb) tartalmát! Futtassuk az egyes cellákat, módosítsunk, kisérletezzünk szabadon!"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"### Feladatok\n",
|
|
"Készítsünk programokat az alábbi feladatokra!\n",
|
|
"- Olvassuk be a 'matrix.txt' adatait, majd határozzuk meg minden egyes oszlopra az 1-esek darabszámát!\n",
|
|
"- Határozzuk meg az 'igazi.txt' fájlban található leghosszabb és legrövidebb szót!\n",
|
|
"- Hány olyan szó van a 'hamlet.txt' fájlban, amiben csak betű van?\n",
|
|
"- Határozzuk meg a 'hamlet.txt' fájl szavaira azt, hogy a szavak hányadrésze tartalmaz angol nagybetűt!\n",
|
|
"- Határozzuk meg a Premier League adatok ('pl.txt') alapján (a tabella elkészítése nélkül), hogy egy adott csapat (pl. 'Liverpool FC') hány gólt rúgott a szezonban!\n",
|
|
"- A Premier League eredménytáblázatát (a tabellát) ne a képernyőre, hanem szövegfájlba írjuk ki, ahol a fájl nevében szerepeljen a forduló sorszáma is (amellyel bezárólag készül a tabella, például: 'pl_tab_02.txt' a 2. forduló utáni tabellát tartalmazza)!"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 20,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[[6, 5, 3, 4, 6, 5, 8, 3, 6, 5]]\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"lines = []\n",
|
|
"with open(\"matrix.txt\") as file:\n",
|
|
" lines.append([list(map(int,i.strip().split())) for i in file.readlines()])\n",
|
|
"\n",
|
|
"\n",
|
|
"print([list(map(sum,i)) for i in lines])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 9,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"A leghosszab szó: 'gépidőelszámolást', ami 17 karakterből áll\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"lines = []\n",
|
|
"with open(\"igazi.txt\") as f:\n",
|
|
" lines.extend(f.readlines())\n",
|
|
"lines = list(set([i.strip() for i in lines]))\n",
|
|
"lenoflines = [len(i) for i in lines]\n",
|
|
"\n",
|
|
"\n",
|
|
"print(f\"A leghosszab szó: '{lines[lenoflines.index(max(lenoflines))]}', ami {max(lenoflines)} karakterből áll\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 11,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"65 90\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"print(ord('A'), ord('Z'))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 55,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Blackburn Rovers 45\n",
|
|
"Wolverhampton Wanderers 38\n",
|
|
"Fulham FC 55\n",
|
|
"Aston Villa 39\n",
|
|
"Liverpool FC 43\n",
|
|
"Sunderland AFC 45\n",
|
|
"Queens Park Rangers 43\n",
|
|
"Bolton Wanderers 42\n",
|
|
"Wigan Athletic 41\n",
|
|
"Norwich City 47\n",
|
|
"Newcastle United 48\n",
|
|
"Arsenal FC 58\n",
|
|
"Stoke City 44\n",
|
|
"Chelsea FC 60\n",
|
|
"West Bromwich Albion 40\n",
|
|
"Manchester United 71\n",
|
|
"Manchester City 74\n",
|
|
"Swansea City 46\n",
|
|
"Tottenham Hotspur 58\n",
|
|
"Everton FC 47\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"class matches:\n",
|
|
" def __init__(self):\n",
|
|
" pass\n",
|
|
"\n",
|
|
"A = []\n",
|
|
"with open(\"pl.txt\") as f:\n",
|
|
" for _ in range(6):\n",
|
|
" next(f)\n",
|
|
" for i in f.readlines():\n",
|
|
" match = matches()\n",
|
|
" line = i.strip().split('\\t')\n",
|
|
" match.ford = line[0]\n",
|
|
" match.hteam = line[1]\n",
|
|
" match.vteam = line[2]\n",
|
|
" match.hgoal = int(line[3])\n",
|
|
" match.vgoal = int(line[4])\n",
|
|
" A.append(match)\n",
|
|
"\n",
|
|
"teams = {}\n",
|
|
"for i in A:\n",
|
|
" if i.hteam in teams.keys():\n",
|
|
" teams[i.hteam] += i.hgoal\n",
|
|
" else:\n",
|
|
" teams.update({i.hteam : i.hgoal})\n",
|
|
" if i.vteam in teams.keys():\n",
|
|
" teams[i.vteam] += 1 \n",
|
|
" else:\n",
|
|
" teams.update({i.vteam : 1})\n",
|
|
"\n",
|
|
"print(\"\\n\".join(f\"{i.ljust(25)} {j}\" for i, j in teams.items()))"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.12.3"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|