From 1afec4c45796af98bea417799b4e89a1bce8c3c1 Mon Sep 17 00:00:00 2001 From: nataliekaranja8-cmd Date: Mon, 13 Oct 2025 16:14:06 +0300 Subject: [PATCH 1/2] final comitt --- .../assignment on list comprehension.ipynb | 245 ++++++++++++++++++ your-code/main.ipynb | 69 +++-- 2 files changed, 293 insertions(+), 21 deletions(-) create mode 100644 your-code/assignment on list comprehension.ipynb diff --git a/your-code/assignment on list comprehension.ipynb b/your-code/assignment on list comprehension.ipynb new file mode 100644 index 0000000..1121db0 --- /dev/null +++ b/your-code/assignment on list comprehension.ipynb @@ -0,0 +1,245 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# List Comprehensions\n", + "\n", + "Complete the following set of exercises to solidify your knowledge of list comprehensions." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "import os" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 1. Use a list comprehension to create and print a list of consecutive integers starting with 1 and ending with 50." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50}\n" + ] + } + ], + "source": [ + "nums={i for i in range(1,51)}\n", + "print(nums)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2. Use a list comprehension to create and print a list of even numbers starting with 2 and ending with 200." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196, 198, 200}\n" + ] + } + ], + "source": [ + "nums= {e for e in range(2,201,2)}\n", + "print(nums) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3. Use a list comprehension to create and print a list containing all elements of the 10 x 4 array below." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "a = [[0.84062117, 0.48006452, 0.7876326 , 0.77109654],\n", + " [0.44409793, 0.09014516, 0.81835917, 0.87645456],\n", + " [0.7066597 , 0.09610873, 0.41247947, 0.57433389],\n", + " [0.29960807, 0.42315023, 0.34452557, 0.4751035 ],\n", + " [0.17003563, 0.46843998, 0.92796258, 0.69814654],\n", + " [0.41290051, 0.19561071, 0.16284783, 0.97016248],\n", + " [0.71725408, 0.87702738, 0.31244595, 0.76615487],\n", + " [0.20754036, 0.57871812, 0.07214068, 0.40356048],\n", + " [0.12149553, 0.53222417, 0.9976855 , 0.12536346],\n", + " [0.80930099, 0.50962849, 0.94555126, 0.33364763]];" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "ename": "SyntaxError", + "evalue": "closing parenthesis ')' does not match opening parenthesis '{' (3441772485.py, line 2)", + "output_type": "error", + "traceback": [ + "\u001b[1;36m Cell \u001b[1;32mIn[11], line 2\u001b[1;36m\u001b[0m\n\u001b[1;33m print{flattened)\u001b[0m\n\u001b[1;37m ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m closing parenthesis ')' does not match opening parenthesis '{'\n" + ] + } + ], + "source": [ + "flattened = [x for row in a for x in row]\n", + "print{flattened)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4. Add a condition to the list comprehension above so that only values greater than or equal to 0.5 are printed." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "greater_than_0_5 = {num for row in a for num in row if num > 0.5}\n", + "print(greater_than_0_5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 5. Use a list comprehension to create and print a list containing all elements of the 5 x 2 x 3 array below." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "b = [[[0.55867166, 0.06210792, 0.08147297],\n", + " [0.82579068, 0.91512478, 0.06833034]],\n", + "\n", + " [[0.05440634, 0.65857693, 0.30296619],\n", + " [0.06769833, 0.96031863, 0.51293743]],\n", + "\n", + " [[0.09143215, 0.71893382, 0.45850679],\n", + " [0.58256464, 0.59005654, 0.56266457]],\n", + "\n", + " [[0.71600294, 0.87392666, 0.11434044],\n", + " [0.8694668 , 0.65669313, 0.10708681]],\n", + "\n", + " [[0.07529684, 0.46470767, 0.47984544],\n", + " [0.65368638, 0.14901286, 0.23760688]]];" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "namba={ 1,2,3,4}\n", + "squares={x**2 for x in namba}\n", + "print(squares)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 6. Add a condition to the list comprehension above so that the last value in each subarray is printed, but only if it is less than or equal to 0.5." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "filtered-last-values={sublist[-1] for sublist in b if sublist[-1]>0.5}\n", + "print(filtered-last-values)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Bonus" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Try to solve these katas using list comprehensions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Easy**\n", + "- [Insert values](https://www.codewars.com/kata/invert-values)\n", + "- [Sum Square(n)](https://www.codewars.com/kata/square-n-sum)\n", + "- [Digitize](https://www.codewars.com/kata/digitize)\n", + "- [List filtering](https://www.codewars.com/kata/list-filtering)\n", + "- [Arithmetic list](https://www.codewars.com/kata/541da001259d9ca85d000688)\n", + "\n", + "**Medium**\n", + "- [Multiples of 3 or 5](https://www.codewars.com/kata/514b92a657cdc65150000006)\n", + "- [Count of positives / sum of negatives](https://www.codewars.com/kata/count-of-positives-slash-sum-of-negatives)\n", + "- [Categorize new member](https://www.codewars.com/kata/5502c9e7b3216ec63c0001aa)\n", + "\n", + "**Advanced**\n", + "- [Queue time counter](https://www.codewars.com/kata/queue-time-counter)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "base", + "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.13.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/your-code/main.ipynb b/your-code/main.ipynb index d584552..75b3b72 100644 --- a/your-code/main.ipynb +++ b/your-code/main.ipynb @@ -11,7 +11,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -27,11 +27,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50}\n" + ] + } + ], "source": [ - "#your code here" + "nums={i for i in range(1,51)}\n", + "print(nums)" ] }, { @@ -43,11 +52,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 184, 186, 188, 190, 192, 194, 196, 198, 200}\n" + ] + } + ], "source": [ - "#your code here" + "nums= {e for e in range(2,201,2)}\n", + "print(nums) " ] }, { @@ -59,7 +77,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "metadata": {}, "outputs": [], "source": [ @@ -77,11 +95,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "SyntaxError", + "evalue": "closing parenthesis ')' does not match opening parenthesis '{' (3441772485.py, line 2)", + "output_type": "error", + "traceback": [ + "\u001b[1;36m Cell \u001b[1;32mIn[11], line 2\u001b[1;36m\u001b[0m\n\u001b[1;33m print{flattened)\u001b[0m\n\u001b[1;37m ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m closing parenthesis ')' does not match opening parenthesis '{'\n" + ] + } + ], "source": [ - "#your code here" + "flattened = [x for row in a for x in row]\n", + "print{flattened)" ] }, { @@ -97,7 +125,8 @@ "metadata": {}, "outputs": [], "source": [ - "#your code here" + "greater_than_0_5 = {num for row in a for num in row if num > 0.5}\n", + "print(greater_than_0_5)" ] }, { @@ -135,7 +164,9 @@ "metadata": {}, "outputs": [], "source": [ - "#your code here" + "namba={ 1,2,3,4}\n", + "squares={x**2 for x in namba}\n", + "print(squares)" ] }, { @@ -151,7 +182,8 @@ "metadata": {}, "outputs": [], "source": [ - "#your code here" + "filtered-last-values={sublist[-1] for sublist in b if sublist[-1]>0.5}\n", + "print(filtered-last-values)" ] }, { @@ -191,7 +223,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "base", "language": "python", "name": "python3" }, @@ -205,12 +237,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.13" - }, - "vscode": { - "interpreter": { - "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" - } + "version": "3.13.5" } }, "nbformat": 4, From df75cea98eb0c789ca94cfe4b4224e639c53e124 Mon Sep 17 00:00:00 2001 From: nataliekaranja8-cmd Date: Mon, 13 Oct 2025 16:40:40 +0300 Subject: [PATCH 2/2] final --- .../assignment on list comprehension.ipynb | 63 +++++++++++++------ 1 file changed, 43 insertions(+), 20 deletions(-) diff --git a/your-code/assignment on list comprehension.ipynb b/your-code/assignment on list comprehension.ipynb index 1121db0..b60086f 100644 --- a/your-code/assignment on list comprehension.ipynb +++ b/your-code/assignment on list comprehension.ipynb @@ -11,7 +11,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 10, "metadata": {}, "outputs": [], "source": [ @@ -27,7 +27,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -52,7 +52,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "metadata": {}, "outputs": [ { @@ -77,7 +77,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 13, "metadata": {}, "outputs": [], "source": [ @@ -95,21 +95,20 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 14, "metadata": {}, "outputs": [ { - "ename": "SyntaxError", - "evalue": "closing parenthesis ')' does not match opening parenthesis '{' (3441772485.py, line 2)", - "output_type": "error", - "traceback": [ - "\u001b[1;36m Cell \u001b[1;32mIn[11], line 2\u001b[1;36m\u001b[0m\n\u001b[1;33m print{flattened)\u001b[0m\n\u001b[1;37m ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m closing parenthesis ')' does not match opening parenthesis '{'\n" + "name": "stdout", + "output_type": "stream", + "text": [ + "[0.84062117, 0.48006452, 0.7876326, 0.77109654, 0.44409793, 0.09014516, 0.81835917, 0.87645456, 0.7066597, 0.09610873, 0.41247947, 0.57433389, 0.29960807, 0.42315023, 0.34452557, 0.4751035, 0.17003563, 0.46843998, 0.92796258, 0.69814654, 0.41290051, 0.19561071, 0.16284783, 0.97016248, 0.71725408, 0.87702738, 0.31244595, 0.76615487, 0.20754036, 0.57871812, 0.07214068, 0.40356048, 0.12149553, 0.53222417, 0.9976855, 0.12536346, 0.80930099, 0.50962849, 0.94555126, 0.33364763]\n" ] } ], "source": [ "flattened = [x for row in a for x in row]\n", - "print{flattened)" + "print (flattened)" ] }, { @@ -121,9 +120,17 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{0.84062117, 0.7876326, 0.77109654, 0.81835917, 0.87645456, 0.7066597, 0.57433389, 0.92796258, 0.69814654, 0.97016248, 0.71725408, 0.57871812, 0.87702738, 0.76615487, 0.9976855, 0.53222417, 0.50962849, 0.80930099, 0.94555126}\n" + ] + } + ], "source": [ "greater_than_0_5 = {num for row in a for num in row if num > 0.5}\n", "print(greater_than_0_5)" @@ -138,7 +145,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -160,9 +167,17 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{16, 1, 4, 9}\n" + ] + } + ], "source": [ "namba={ 1,2,3,4}\n", "squares={x**2 for x in namba}\n", @@ -178,12 +193,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 21, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[0.06769833, 0.96031863, 0.51293743], [0.58256464, 0.59005654, 0.56266457]]\n" + ] + } + ], "source": [ - "filtered-last-values={sublist[-1] for sublist in b if sublist[-1]>0.5}\n", - "print(filtered-last-values)" + "filtered =[sublist[-1] for sublist in b if sublist[-1][-1]>0.5]\n", + "print(filtered)" ] }, {