Add notebook with solutions for uebung for dictionaries developed during the course

Signed-off-by: Christopher Arndt <chris@chrisarndt.de>
This commit is contained in:
Christopher Arndt 2024-05-08 16:59:06 +02:00
parent 4ce82f433f
commit e8bb889d9b
1 changed files with 143 additions and 0 deletions

View File

@ -0,0 +1,143 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Rekapitulation Lösung Dictionaries"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"# Ausgangslage\n",
"\n",
"salaries_1 = {'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500}\n",
"salaries_2 = {'Barbara': 3000, 'Elke': 3300, 'Michael': 2800, 'Johann': 2000}"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500}\n",
"salaries_1: {'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500}\n",
"salaries_all: {'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500, 'Barbara': 3000, 'Elke': 3300, 'Michael': 2800, 'Johann': 2000}\n",
"Summe: 22100\n"
]
}
],
"source": [
"salaries_all = {}\n",
"\n",
"for key in salaries_1:\n",
" salaries_all[key] = salaries_1[key]\n",
"\n",
"print(salaries_all)\n",
"\n",
"for key in salaries_2:\n",
" salaries_all[key] = salaries_2[key]\n",
"\n",
"print(\"salaries_1:\", salaries_1)\n",
"print(\"salaries_all:\", salaries_all)\n",
"\n",
"\n",
"print(\"Summe:\", sum(salaries_all.values()))"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"salaries_1: {'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500}\n",
"salaries_all: {'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500}\n",
"salaries_1: {'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500}\n",
"salaries_2: {'Barbara': 3000, 'Elke': 3300, 'Michael': 2800, 'Johann': 2000}\n",
"salaries_all: {'Anna': 2000, 'Mark': 3000, 'Judith': 3500, 'Thomas': 2500, 'Barbara': 3000, 'Elke': 3300, 'Michael': 2800, 'Johann': 2000}\n",
"8\n"
]
}
],
"source": [
"salaries_all = salaries_1.copy()\n",
"\n",
"print(\"salaries_1:\", salaries_1)\n",
"print(\"salaries_all:\", salaries_all)\n",
"\n",
"salaries_all.update(salaries_2)\n",
"\n",
"print(\"salaries_1:\", salaries_1)\n",
"print(\"salaries_2:\", salaries_2)\n",
"print(\"salaries_all:\", salaries_all)\n",
"\n",
"print(len(salaries_all))"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'Anna': 2200.0, 'Mark': 3300.0000000000005, 'Judith': 3850.0000000000005, 'Thomas': 2750.0, 'Barbara': 3300.0000000000005, 'Elke': 3630.0000000000005, 'Michael': 3080.0000000000005, 'Johann': 2200.0}\n"
]
}
],
"source": [
"# Alternative 1\n",
"salaries_new = salaries_all.copy()\n",
"salaries_new.update((key, value * 1.1) for key, value in salaries_new.items())\n",
"\n",
"# Alternative 2\n",
"results = []\n",
"for key, value in salaries_all.items():\n",
" results.append((key, value * 1.1))\n",
"salaries_new = dict(results)\n",
"\n",
"# Alternative 3\n",
"salaries_new = {}\n",
"for key, value in salaries_all.items():\n",
" salaries_new[key] = value * 1.1\n",
"\n",
"print(salaries_new)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "softed",
"language": "python",
"name": "softed"
},
"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.11.8"
}
},
"nbformat": 4,
"nbformat_minor": 2
}