diff --git a/your-code/main.ipynb b/your-code/main.ipynb index f3bde01..105a169 100644 --- a/your-code/main.ipynb +++ b/your-code/main.ipynb @@ -24,11 +24,15 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "id": "630d7e4d", "metadata": {}, "outputs": [], - "source": [] + "source": [ + "import math \n", + "import statistics as stats\n", + "import random as ran" + ] }, { "cell_type": "markdown", @@ -40,6 +44,26 @@ "Remember to use list comprehensions and to print your results" ] }, + { + "cell_type": "code", + "execution_count": 5, + "id": "58f3071d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400]\n" + ] + } + ], + "source": [ + "square = list(i**2 for i in range (1, 21))\n", + "\n", + "print(square)" + ] + }, { "cell_type": "markdown", "id": "1207cb2c", @@ -59,11 +83,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "c047115a", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1.0, 1.4142135623730951, 1.7320508075688772, 2.0, 2.23606797749979, 2.449489742783178, 2.6457513110645907, 2.8284271247461903, 3.0, 3.1622776601683795, 3.3166247903554, 3.4641016151377544, 3.605551275463989, 3.7416573867739413, 3.872983346207417, 4.0, 4.123105625617661, 4.242640687119285, 4.358898943540674, 4.47213595499958, 4.58257569495584, 4.69041575982343, 4.795831523312719, 4.898979485566356, 5.0, 5.0990195135927845, 5.196152422706632, 5.291502622129181, 5.385164807134504, 5.477225575051661, 5.5677643628300215, 5.656854249492381, 5.744562646538029, 5.830951894845301, 5.916079783099616, 6.0, 6.082762530298219, 6.164414002968976, 6.244997998398398, 6.324555320336759, 6.4031242374328485, 6.48074069840786, 6.557438524302, 6.6332495807108, 6.708203932499369, 6.782329983125268, 6.855654600401044, 6.928203230275509, 7.0, 7.0710678118654755, 7.14142842854285, 7.211102550927978, 7.280109889280518, 7.3484692283495345, 7.416198487095663, 7.483314773547883, 7.54983443527075, 7.615773105863909, 7.681145747868608, 7.745966692414834, 7.810249675906654, 7.874007874011811, 7.937253933193772, 8.0, 8.06225774829855, 8.12403840463596, 8.18535277187245, 8.246211251235321, 8.306623862918075, 8.366600265340756, 8.426149773176359, 8.48528137423857, 8.54400374531753, 8.602325267042627, 8.660254037844387, 8.717797887081348, 8.774964387392123, 8.831760866327848, 8.888194417315589, 8.94427190999916, 9.0, 9.055385138137417, 9.1104335791443, 9.16515138991168, 9.219544457292887, 9.273618495495704, 9.327379053088816, 9.38083151964686, 9.433981132056603, 9.486832980505138, 9.539392014169456, 9.591663046625438, 9.643650760992955, 9.695359714832659, 9.746794344808963, 9.797958971132712, 9.848857801796104, 9.899494936611665, 9.9498743710662, 10.0]\n" + ] + } + ], + "source": [ + "sqrt = list(math.sqrt(i) for i in range (1, 101))\n", + "print(sqrt)" + ] }, { "cell_type": "markdown", @@ -77,11 +112,22 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "e23d87ea", + "execution_count": 8, + "id": "9eb70f31", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0]\n" + ] + } + ], + "source": [ + "my_list = list(i for i in range (-10, 1))\n", + "print(my_list)" + ] }, { "cell_type": "markdown", @@ -95,11 +141,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "id": "d8d1c865", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]\n" + ] + } + ], + "source": [ + "odds = list(i for i in range (1, 101) if i%2 != 0)\n", + "print(odds)" + ] }, { "cell_type": "markdown", @@ -112,11 +169,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "id": "6a9cfb8c", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84, 91, 98, 105, 112, 119, 126, 133, 140, 147, 154, 161, 168, 175, 182, 189, 196, 203, 210, 217, 224, 231, 238, 245, 252, 259, 266, 273, 280, 287, 294, 301, 308, 315, 322, 329, 336, 343, 350, 357, 364, 371, 378, 385, 392, 399, 406, 413, 420, 427, 434, 441, 448, 455, 462, 469, 476, 483, 490, 497, 504, 511, 518, 525, 532, 539, 546, 553, 560, 567, 574, 581, 588, 595, 602, 609, 616, 623, 630, 637, 644, 651, 658, 665, 672, 679, 686, 693, 700, 707, 714, 721, 728, 735, 742, 749, 756, 763, 770, 777, 784, 791, 798, 805, 812, 819, 826, 833, 840, 847, 854, 861, 868, 875, 882, 889, 896, 903, 910, 917, 924, 931, 938, 945, 952, 959, 966, 973, 980, 987, 994]\n" + ] + } + ], + "source": [ + "divisible_by_seven = list(i for i in range (1, 1001) if i%7 ==0)\n", + "print(divisible_by_seven)" + ] }, { "cell_type": "markdown", @@ -129,24 +197,28 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 23, "id": "43b38bd3", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['f', 'n', 'd', 'l', 'l', 'f', 't', 'h', 'w', 'r', 'd', 's', 'n', 's', 't', 'r', 'n', 'g', 't', 'h', 't', 'r', 'm', 'n', 's', 'y', 'l', 'l', 'b', 'c']\n" + ] + } + ], "source": [ "# You can use the following test string but feel free to modify at your convenience\n", "\n", - "teststring = 'Find all of the words in a string that are monosyllabic'" + "teststring = 'Find all of the words in a string that are monosyllabic'\n", + "vowels = [\"a\", \"e\", \"i\", \"o\", \"u\"]\n", + "\n", + "non_vowels = list(letter for letter in teststring.lower() if letter not in vowels if letter != ' ')\n", + "print(non_vowels)" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "d5fc7426", - "metadata": {}, - "outputs": [], - "source": [] - }, { "cell_type": "markdown", "id": "277d491e", @@ -160,11 +232,24 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 26, "id": "3a43399c", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['T', 'Q', 'B', 'F', 'J', 'O', 'T', 'L', 'D']\n" + ] + } + ], + "source": [ + "sentence = \"The Quick Brown Fox Jumped Over The Lazy Dog\"\n", + "\n", + "capital_letters = list(letter for letter in sentence if letter.isupper())\n", + "print(capital_letters)" + ] }, { "cell_type": "markdown", @@ -179,11 +264,25 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 27, "id": "3ddb68df", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['t', 'h', 'q', 'c', 'k', 'b', 'r', 'w', 'n', 'f', 'x', 'j', 'm', 'p', 'd', 'v', 'r', 't', 'h', 'l', 'z', 'y', 'd', 'g']\n" + ] + } + ], + "source": [ + "vowels = [\"a\", \"e\", \"i\", \"o\", \"u\"]\n", + "sentence = \"The Quick Brown Fox Jumped Over The Lazy Dog\"\n", + "\n", + "consonants = list(letter for letter in sentence.lower() if letter not in vowels if letter != ' ')\n", + "print(consonants)" + ] }, { "cell_type": "markdown", @@ -201,11 +300,46 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 50, + "id": "842bd375", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Current working directory: /Users/edwardrodger/Documents/BARCELONA_22-3/IRONHACK/Course/Week_2/lab-errhand-listcomp/your-code\n" + ] + } + ], + "source": [ + "current_dir = os.getcwd()\n", + "print(\"Current working directory:\", current_dir)" + ] + }, + { + "cell_type": "code", + "execution_count": 57, "id": "22bb13eb", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['week-2', '.DS_Store', 'images', 'example', 'datasets', 'troubleshooting', 'README.md', 'week-1', '.gitignore', '.git', 'cheatsheet', 'faq-and-examples']\n" + ] + } + ], + "source": [ + "import os\n", + "\n", + "mydir = \"/Users/edwardrodger/Documents/BARCELONA_22-3/IRONHACK/Course/lectures\"\n", + "\n", + "files = list(i for i in os.listdir(mydir))\n", + "print(files)\n", + " " + ] }, { "cell_type": "markdown", @@ -220,11 +354,25 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 41, "id": "120b29bd", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[60, 16, 57, 4, 1, 80, 59, 58, 12, 71], [10, 41, 34, 87, 71, 57, 38, 48, 51, 93], [79, 4, 3, 17, 73, 49, 54, 90, 99, 63], [71, 67, 43, 77, 64, 34, 27, 49, 60, 62]]\n" + ] + } + ], + "source": [ + "import random\n", + "\n", + "random_lists = list(list(random.sample(range(0,100), k = 10)) for _ in range (4))\n", + "\n", + "print(random_lists)" + ] }, { "cell_type": "markdown", @@ -238,7 +386,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 60, "id": "b3afebb7", "metadata": {}, "outputs": [], @@ -248,11 +396,44 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 65, + "id": "4336c4f5", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 3, 4, 5, 6, 7, 8, 9]\n" + ] + } + ], + "source": [ + "flatten_list = []\n", + "for i in list_of_lists:\n", + " for x in i:\n", + " flatten_list.append(x)\n", + "print(flatten_list)" + ] + }, + { + "cell_type": "code", + "execution_count": 72, "id": "b6bcef37", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 3, 4, 5, 6, 7, 8, 9]\n" + ] + } + ], + "source": [ + "flatten_list = list(x for i in list_of_lists for x in i)\n", + "print(flatten_list)" + ] }, { "cell_type": "markdown", @@ -267,7 +448,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 73, "id": "7087f44e", "metadata": {}, "outputs": [], @@ -279,11 +460,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 81, "id": "a932aff5", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[40.0, 20.0, 10.0, 30.0, 20.0, 20.0, 20.0, 20.0, 20.0, 30.0, 20.0, 30.0, 20.0, 30.0, 50.0, 10.0, 30.0, 20.0, 20.0, 20.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0]\n" + ] + } + ], + "source": [ + "floats = list(float(x) for i in list_of_lists for x in i)\n", + "print(floats)" + ] }, { "cell_type": "markdown", @@ -295,22 +487,52 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 83, "id": "b5980ab4", "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "TypeError", + "evalue": "unsupported operand type(s) for ** or pow(): 'str' and 'int'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[83], line 2\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m i \u001b[38;5;129;01min\u001b[39;00m [\u001b[38;5;124m'\u001b[39m\u001b[38;5;124ma\u001b[39m\u001b[38;5;124m'\u001b[39m,\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mb\u001b[39m\u001b[38;5;124m'\u001b[39m,\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mc\u001b[39m\u001b[38;5;124m'\u001b[39m]:\n\u001b[0;32m----> 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(i\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m2\u001b[39m)\n", + "\u001b[0;31mTypeError\u001b[0m: unsupported operand type(s) for ** or pow(): 'str' and 'int'" + ] + } + ], "source": [ "for i in ['a','b','c']:\n", - " print i**2" + " print(i**2)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 84, "id": "3605fc78", - "metadata": {}, - "outputs": [], - "source": [] + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The number you're trying to square is: , a\n", + "The number you're trying to square is: , b\n", + "The number you're trying to square is: , c\n" + ] + } + ], + "source": [ + "for i in ['a','b','c']:\n", + " try:\n", + " print(i**2)\n", + " except:\n", + " print(f\"The number you're trying to square is: {type(i)}, {i}\")" + ] }, { "cell_type": "markdown", @@ -326,25 +548,31 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 89, "id": "441acd1c", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "You cannot divide by this number: 0\n", + "All Done\n" + ] + } + ], "source": [ "x = 5\n", "y = 0\n", "\n", - "z = x/y" + "try:\n", + " z = x/y\n", + "except: \n", + " print(f\"You cannot divide by this number: {y}\")\n", + " print (\"All Done\")\n", + "\n" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "976fec9f", - "metadata": {}, - "outputs": [], - "source": [] - }, { "cell_type": "markdown", "id": "85ea78c5", @@ -357,10 +585,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 90, "id": "783a8224", "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "IndexError", + "evalue": "list index out of range", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mIndexError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[90], line 2\u001b[0m\n\u001b[1;32m 1\u001b[0m abc\u001b[38;5;241m=\u001b[39m[\u001b[38;5;241m10\u001b[39m,\u001b[38;5;241m20\u001b[39m,\u001b[38;5;241m20\u001b[39m]\n\u001b[0;32m----> 2\u001b[0m \u001b[38;5;28mprint\u001b[39m(abc[\u001b[38;5;241m3\u001b[39m])\n", + "\u001b[0;31mIndexError\u001b[0m: list index out of range" + ] + } + ], "source": [ "abc=[10,20,20]\n", "print(abc[3])" @@ -368,11 +608,26 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 93, "id": "cfcf15f0", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The list index you provided is longer than the list provided, please provide an index no higher than 2\n" + ] + } + ], + "source": [ + "abc=[10,20,20]\n", + "try:\n", + " print(abc[3])\n", + "except:\n", + " print(f\"The list index you provided is longer than the list provided, please provide an index no higher than {len(abc)-1}\")\n", + " " + ] }, { "cell_type": "markdown", @@ -388,52 +643,106 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "3c1f141b", + "execution_count": 186, + "id": "11365e1b", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Please enter the first number: 8\n", + "Please enter the second number: 0\n", + "Cannot divide by 0. Please choose a non-zero second number.\n" + ] + } + ], + "source": [ + "try:\n", + " num1_str = input(\"Please enter the first number: \")\n", + " num2_str = input(\"Please enter the second number: \")\n", + "\n", + " num1 = int(num1_str)\n", + " num2 = int(num2_str)\n", + "\n", + " result = num1 / num2\n", + "\n", + "except ValueError:\n", + " print(\"Please enter valid integers.\")\n", + "except ZeroDivisionError:\n", + " print(\"Cannot divide by 0. Please choose a non-zero second number.\")\n", + "else:\n", + " print(f\"The result of {num1} divided by {num2} is: {result}\")" + ] }, { "cell_type": "markdown", - "id": "5d712a55", + "id": "808817eb", "metadata": {}, "source": [ - "# Handle the exception thrown by the code below by using try and except blocks. \n", - "\n", - "Check in provided resources the type of error you may use. " + "^^ me lo hizo chatgpt al final, estuve 1 hora intentandolo con condiciones dentro de los except (see below)" ] }, { "cell_type": "code", - "execution_count": 1, - "id": "b73f824c", + "execution_count": 182, + "id": "3c1f141b", "metadata": {}, "outputs": [ { - "ename": "FileNotFoundError", - "evalue": "[Errno 2] No such file or directory: 'testfile'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'testfile'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'r'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwrite\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Test write this'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'testfile'" + "name": "stdout", + "output_type": "stream", + "text": [ + "Please enter an integer: word\n", + "Cannot divide by 0, please choose a positive or negative integer\n" ] } ], "source": [ - "f = open('testfile','r')\n", - "f.write('Test write this')" + "try:\n", + " a = int(input(\"Please enter an integer: \"))\n", + " b = int(input(\"Please enter another integer: \"))\n", + " result = a/b\n", + " print(result)\n", + "except:\n", + " if type(a) is not int or type(b) is not int:\n", + " print(f\"Please enter a valid positive or negative integer, not a word\")\n", + " if int(b) == 0:\n", + " print(f\"Cannot divide by 0, please choose a positive or negative integer\")" + ] + }, + { + "cell_type": "raw", + "id": "f2a27ff2", + "metadata": {}, + "source": [ + "\n", + "# Handle the exception thrown by the code below by using try and except blocks. \n", + "\n", + "Check in provided resources the type of error you may use. " ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 188, "id": "5a1cb361", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Oops, looks like this file doesn't exist, please try again\n" + ] + } + ], + "source": [ + "try:\n", + " f = open('testfile','r')\n", + " f.write('Test write this')\n", + "except FileNotFoundError:\n", + " print(\"Oops, looks like this file doesn't exist, please try again\")" + ] }, { "cell_type": "markdown", @@ -447,23 +756,28 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 189, "id": "5f639ab1", "metadata": {}, "outputs": [ { - "ename": "IndentationError", - "evalue": "unexpected indent (, line 2)", - "output_type": "error", - "traceback": [ - "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m2\u001b[0m\n\u001b[0;31m line = f.readline()\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mIndentationError\u001b[0m\u001b[0;31m:\u001b[0m unexpected indent\n" + "name": "stdout", + "output_type": "stream", + "text": [ + "File doesn't exist or couldn't be found, try again\n" ] } ], "source": [ - "fp = open('myfile.txt')\n", + "try:\n", + " fp = open('myfile.txt')\n", " line = f.readline()\n", - " i = int(s.strip())\n" + " i = int(s.strip())\n", + "except FileNotFoundError:\n", + " print(\"File doesn't exist or couldn't be found, try again\")\n", + "except ValueError:\n", + " print(\"Data not convertible into int\")\n", + " \n" ] }, { @@ -481,37 +795,38 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 202, "id": "3f043ef6", "metadata": {}, - "outputs": [ - { - "ename": "NameError", - "evalue": "name 'sys' is not defined", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;32massert\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;34m'linux'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0msys\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplatform\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Function can only run on Linux systems.\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Doing something.'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mlinux_interaction\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;32m\u001b[0m in \u001b[0;36mlinux_interaction\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mlinux_interaction\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0;32massert\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;34m'linux'\u001b[0m \u001b[0;32min\u001b[0m \u001b[0msys\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplatform\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Function can only run on Linux systems.\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 3\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Doing something.'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mlinux_interaction\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mNameError\u001b[0m: name 'sys' is not defined" - ] - } - ], + "outputs": [], "source": [ + "import sys\n", "def linux_interaction():\n", " assert ('linux' in sys.platform), \"Function can only run on Linux systems.\"\n", - " print('Doing something.')\n", - "linux_interaction()" + " print('Doing something.')\n" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 203, "id": "1643bbed", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Function can only run on Linux systems\n" + ] + } + ], + "source": [ + "try:\n", + " linux_interaction()\n", + " \n", + "except AssertionError:\n", + " print(\"Function can only run on Linux systems\")" + ] }, { "cell_type": "markdown", @@ -636,7 +951,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.13" + "version": "3.11.4" }, "toc": { "base_numbering": 1,