Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
289 changes: 289 additions & 0 deletions your-code/comprehesions.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,289 @@
{
"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": 1,
"metadata": {},
"outputs": [],
"source": [
"import os as 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": 5,
"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": [
"#your code here\n",
"a = []\n",
"\n",
"a = [i for i in range(1,51)]\n",
"\n",
"print(a)"
]
},
{
"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": 8,
"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": [
"#your code here\n",
"\n",
"a = []\n",
"\n",
"a = [i for i in range(2,202,2)]\n",
"\n",
"print(a)"
]
},
{
"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": 1,
"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": 3,
"metadata": {},
"outputs": [
{
"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": [
"#your code here\n",
"\n",
"\n",
"b = []\n",
"\n",
"b = [ recorro_a2 for recorro_a1 in a for recorro_a2 in recorro_a1]\n",
"\n",
"print(b)"
]
},
{
"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": 9,
"metadata": {},
"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.87702738, 0.76615487, 0.57871812, 0.53222417, 0.9976855, 0.80930099, 0.50962849, 0.94555126]\n"
]
}
],
"source": [
"#your code here\n",
"c = []\n",
"c = [d for i in a for d in i if d >= 0.5]\n",
"\n",
"print(c)"
]
},
{
"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": 15,
"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": 16,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0.55867166, 0.06210792, 0.08147297, 0.82579068, 0.91512478, 0.06833034, 0.05440634, 0.65857693, 0.30296619, 0.06769833, 0.96031863, 0.51293743, 0.09143215, 0.71893382, 0.45850679, 0.58256464, 0.59005654, 0.56266457, 0.71600294, 0.87392666, 0.11434044, 0.8694668, 0.65669313, 0.10708681, 0.07529684, 0.46470767, 0.47984544, 0.65368638, 0.14901286, 0.23760688]\n"
]
}
],
"source": [
"#your code here\n",
"f= []\n",
"f = [entro3 for entro1 in b for entro2 in entro1 for entro3 in entro2]\n",
"print(f)"
]
},
{
"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": 20,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0.08147297, 0.06833034, 0.30296619, 0.45850679, 0.11434044, 0.10708681, 0.47984544, 0.23760688]\n"
]
}
],
"source": [
"#your code here\n",
"f= []\n",
"f = [entro2[-1] for entro1 in b for entro2 in entro1 if entro2[-1] <= 0.5]\n",
"print(f)"
]
},
{
"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
}