From f5de52450e131b26ab209f6400c9ebde08756939 Mon Sep 17 00:00:00 2001 From: Sergey Volkov Date: Mon, 6 Oct 2025 15:28:40 +0200 Subject: [PATCH] complete mandatory tasks of the lab1 --- your-code/challenges.ipynb | 314 ++++++++++++++++++++++++++++--------- 1 file changed, 241 insertions(+), 73 deletions(-) diff --git a/your-code/challenges.ipynb b/your-code/challenges.ipynb index ba91b3f..5ed5ed8 100644 --- a/your-code/challenges.ipynb +++ b/your-code/challenges.ipynb @@ -13,11 +13,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "tup = tuple(\"I\") # or tup = (\"I\",)" ] }, { @@ -31,11 +31,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "tuple" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here" + "type(tup)" ] }, { @@ -53,16 +64,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": { "scrolled": true }, "outputs": [], "source": [ - "# Your code here\n", + "temp_list = list(tup)\n", + "temp_list.extend([\"r\", \"o\", \"n\", \"h\", \"a\", \"c\", \"k\"])\n", + "tup = tuple(temp_list)\n", "\n", "# Your explanation here\n", - "# You can :) " + "# tuples are immutable, so you cannot append elements to it\n", + "# You can construct a new tuple as needed and save it into the same variable\n", + "# However, it will be a NEW tuple, not the one we created before" ] }, { @@ -80,11 +95,13 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "# as said above, it's not possible to change the tuple\n", + "# let's construct a new one instead\n", + "tup = tuple([\"I\", \"r\", \"o\", \"n\", \"h\", \"a\", \"c\", \"k\"])" ] }, { @@ -102,11 +119,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('I', 'r', 'o', 'n')\n", + "('h', 'a', 'c', 'k')\n" + ] + } + ], "source": [ - "# Your code here" + "tup1 = tup[0:4]\n", + "tup2 = tup[-4:]\n", + "print(tup1)\n", + "print(tup2)" ] }, { @@ -120,11 +149,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('I', 'r', 'o', 'n', 'h', 'a', 'c', 'k')\n" + ] + } + ], "source": [ - "# Your code here" + "tup3 = tup1 + tup2\n", + "print(tup3)" ] }, { @@ -136,11 +174,19 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n" + ] + } + ], "source": [ - "# Your code here" + "print(len(tup1) + len(tup2) == len(tup3))" ] }, { @@ -152,11 +198,19 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "4\n" + ] + } + ], "source": [ - "# Your code here" + "print(tup3.index(\"h\"))" ] }, { @@ -176,16 +230,37 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a True\n", + "\n", + "b False\n", + "\n", + "c True\n", + "\n", + "d False\n", + "\n", + "e False\n", + "\n" + ] + } + ], "source": [ - "# Your code here" + "letters = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", + "for letter in letters:\n", + " print(letter, end=\" \")\n", + " print(letter in tup3)\n", + " print()" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -203,11 +278,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'a': 1, 'b': 0, 'c': 1, 'd': 0, 'e': 0}\n" + ] + } + ], "source": [ - "# Your code here" + "freqs = {}\n", + "for letter in letters:\n", + " freqs[letter] = tup3.count(letter)\n", + "print(freqs)" ] }, { @@ -223,7 +309,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "metadata": {}, "outputs": [], "source": [ @@ -248,11 +334,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "sample_list_1 = random.sample(range(0, 101), 80)" ] }, { @@ -264,11 +350,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 19, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "80\n" + ] + } + ], "source": [ - "# your code here" + "set1 = set(sample_list_1)\n", + "print(len(set1))" ] }, { @@ -287,11 +382,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ - "# your code here" + "sample_list_2 = [random.randint(0, 100) for _ in range(80)]" ] }, { @@ -303,11 +398,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 20, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "55\n" + ] + } + ], "source": [ - "# Your code here" + "set2 = set(sample_list_2)\n", + "print(len(set2))" ] }, { @@ -319,11 +423,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 21, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "set3 = set1 - set2" ] }, { @@ -335,11 +439,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 22, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "set4 = set2 - set1" ] }, { @@ -351,11 +455,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 23, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "set5 = set1 & set2" ] }, { @@ -375,11 +479,25 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 24, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n", + "True\n", + "True\n", + "True\n" + ] + } + ], "source": [ - "# Your code here" + "print(len(set1) >= len(set2))\n", + "print(len(set3) <= len(set1))\n", + "print(len(set4) <= len(set2))\n", + "print(0 <= len(set5) <= min(len(set1), len(set2)))" ] }, { @@ -391,11 +509,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 25, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "set6 = set()" ] }, { @@ -407,11 +525,12 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 26, "metadata": {}, "outputs": [], "source": [ - "# Your code here" + "set6.update(set3)\n", + "set6.update(set5)" ] }, { @@ -423,11 +542,19 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 27, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n" + ] + } + ], "source": [ - "# Your code here" + "print(set1 == set6)" ] }, { @@ -439,11 +566,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 28, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "False\n", + "False\n" + ] + } + ], "source": [ - "# Your code here" + "print(set1.issubset(set2))\n", + "print(set1.issubset(set3))" ] }, { @@ -457,11 +594,19 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 29, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n" + ] + } + ], "source": [ - "# Your code here" + "print(set3.union(set4).union(set5) == set1.union(set2))" ] }, { @@ -473,11 +618,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 30, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "1" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here" + "set1.pop()" ] }, { @@ -493,11 +649,23 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{2, 3, 4, 5, 7, 10, 13, 14, 15, 16, 18, 20, 22, 23, 24, 25, 27, 28, 30, 32, 33, 34, 35, 36, 38, 40, 42, 43, 44, 46, 47, 50, 52, 54, 56, 57, 58, 60, 62, 63, 65, 67, 68, 70, 73, 75, 76, 77, 78, 80, 82, 83, 84, 85, 86, 87, 88, 90, 92, 93, 95, 96, 97, 98, 100}\n" + ] + } + ], "source": [ - "# Your code here" + "list_to_remove = [1, 9, 11, 19, 21, 29, 31, 39, 41, 49, 51, 59, 61, 69, 71, 79, 81, 89, 91, 99]\n", + "for number in list_to_remove:\n", + " if number in set1:\n", + " set1.remove(number)\n", + "print(set1)" ] }, { @@ -602,7 +770,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -616,7 +784,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.13" + "version": "3.13.7" }, "vscode": { "interpreter": { @@ -625,5 +793,5 @@ } }, "nbformat": 4, - "nbformat_minor": 2 + "nbformat_minor": 4 }