WalidAlHassan commited on
Commit
5ab8a9f
·
1 Parent(s): 4d3159d
python course old/Error Handling.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"collapsed_sections":["tuzVCTQ6-pw-","sQJBFosTmIa0","mbU_i0zXtXBx"],"authorship_tag":"ABX9TyO+nZ2yFkRYNTB3js2EaME/"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["# `Error Handling`"],"metadata":{"id":"F2lhKLJy6pdh"}},{"cell_type":"markdown","source":["# **Exceptions and error handling (try, except)**"],"metadata":{"id":"tuzVCTQ6-pw-"}},{"cell_type":"code","execution_count":null,"metadata":{"id":"D2MjmdES-R1G"},"outputs":[],"source":["def func():\n"," try:\n"," print('No error occurred')\n"," # return True\n"," except Exception as e:\n"," print(f\"An error occurred: {e}\")\n"," # return False\n"," else:\n"," print(\"Operation successful!\")\n"," finally:\n"," print(\"Cleaning up resources.\")"]},{"cell_type":"code","source":["func()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"5l2vr2NZIzPI","executionInfo":{"status":"ok","timestamp":1735210423749,"user_tz":-360,"elapsed":1515,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"64d51f60-0065-49c0-fbde-9a6975bd6a26"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["No error occurred\n","Operation successful!\n","Cleaning up resources.\n"]}]},{"cell_type":"code","source":["# Handling a Specific Exception\n","try:\n"," result = 10 / 0\n","except ZeroDivisionError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ugaUdSE9KKha","executionInfo":{"status":"ok","timestamp":1735210423749,"user_tz":-360,"elapsed":4,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"7faa121f-d6ad-4ed2-cb88-db9fbc54d732"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: division by zero\n"]}]},{"cell_type":"code","source":["# Handling Multiple Exceptions\n","try:\n"," num = int(input(\"Enter a number: \"))\n"," result = 10 / num\n","except ValueError:\n"," print(\"Invalid input! Please enter a number.\")\n","except ZeroDivisionError:\n"," print(\"You can't divide by zero.\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"7_ujgXYXMrU1","executionInfo":{"status":"ok","timestamp":1735210450030,"user_tz":-360,"elapsed":26284,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1422df68-46f1-40c0-e569-153525094e74"},"execution_count":null,"outputs":[{"name":"stdout","output_type":"stream","text":["Enter a number: 7\n"]}]},{"cell_type":"code","source":["# General Exception Handling\n","try:\n"," risky_operation()\n","except Exception as e:\n"," print(f\"An error occurred: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"bTXSbSYNM3UQ","executionInfo":{"status":"ok","timestamp":1735210450031,"user_tz":-360,"elapsed":8,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b7d6ef6d-cc08-4028-c556-1938e06e143e"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["An error occurred: name 'risky_operation' is not defined\n"]}]},{"cell_type":"code","source":["# Using else and finally\n","try:\n"," num = int(input(\"Enter a number: \"))\n"," result = 10 / num\n","except Exception as e:\n"," print(f\"An error occurred: {e}\")\n","else:\n"," print(f\"Result is {result}\")\n","finally:\n"," print(\"Execution complete.\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"mrvMZdhLNEaC","executionInfo":{"status":"ok","timestamp":1735210455467,"user_tz":-360,"elapsed":5439,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"68efc08e-603b-4f5f-cb83-503b23a4b937"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Enter a number: 7\n","Result is 1.4285714285714286\n","Execution complete.\n"]}]},{"cell_type":"code","source":["# Raising Exceptions\n","try:\n"," age = int(input(\"Enter your age: \"))\n"," if age < 0:\n"," raise Exception(\"Age cannot be negative\")\n","\n"," if age > 99:\n"," raise Exception(\"Age cannot be above 99\")\n"," else:\n"," print(\"Age is valid\")\n","except Exception as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"k-42e-xINfyJ","executionInfo":{"status":"ok","timestamp":1735210460773,"user_tz":-360,"elapsed":5311,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"82573081-f07b-4dd7-fbac-57c2e00226fb"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Enter your age: 8\n","Age is valid\n"]}]},{"cell_type":"code","source":["# File Handling with Exceptions\n","try:\n"," with open(\"nonexistent.txt\", \"r\") as file:\n"," data = file.read()\n","except FileNotFoundError:\n"," print(\"File not found! Please check the file name.\")\n","else:\n"," print(\"File content:\")\n"," print(data)\n","finally:\n"," print(\"Execution complete.\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"UZitfeWvPe5g","executionInfo":{"status":"ok","timestamp":1735210460773,"user_tz":-360,"elapsed":4,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"9cf772ee-8a9c-42db-eb9a-496bd24957ce"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["File not found! Please check the file name.\n","Execution complete.\n"]}]},{"cell_type":"markdown","source":["# **Raising exceptions**"],"metadata":{"id":"sQJBFosTmIa0"}},{"cell_type":"code","source":["# Raising a Built-in Exception\n","age = int(input(\"Enter your age: \"))\n","if age < 0:\n"," raise ValueError(\"Age cannot be negative!\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ZuZ9KmjYmKuT","executionInfo":{"status":"ok","timestamp":1735212155350,"user_tz":-360,"elapsed":2924,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"a35156d2-7358-469e-a406-900e274584a5"},"execution_count":null,"outputs":[{"name":"stdout","output_type":"stream","text":["Enter your age: 7\n"]}]},{"cell_type":"code","source":["# Raising Exceptions in Functions\n","def divide(a, b):\n"," if b == 0:\n"," raise ZeroDivisionError(\"Division by zero is not allowed.\")\n"," return a / b\n","\n","try:\n"," result = divide(10, 0)\n","except ZeroDivisionError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"kYUGZlQMndMA","executionInfo":{"status":"ok","timestamp":1735211076611,"user_tz":-360,"elapsed":362,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0235bacc-55ce-4539-a919-cf4e2a0f1e83"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: Division by zero is not allowed.\n"]}]},{"cell_type":"code","source":["# Re-raising Exceptions\n","def risky_function():\n"," try:\n"," raise ValueError(\"Something went wrong!\")\n"," except ValueError as e:\n"," print(\"Handling error locally, but re-raising it.\")\n"," raise # Re-raises the caught exception\n","\n","try:\n"," risky_function()\n","except ValueError as e:\n"," print(f\"Caught re-raised exception: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"aIJzD3ZTnmQp","executionInfo":{"status":"ok","timestamp":1735211096817,"user_tz":-360,"elapsed":373,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0906f480-40e8-4655-e583-b39e34387ca0"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Handling error locally, but re-raising it.\n","Caught re-raised exception: Something went wrong!\n"]}]},{"cell_type":"code","source":[],"metadata":{"id":"vA9uSr2upgfH"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["# **Basic Usage of Built-in Exceptions**"],"metadata":{"id":"mbU_i0zXtXBx"}},{"cell_type":"code","source":["# ZeroDivisionError\n","try:\n"," result = 10 / 0\n","except ZeroDivisionError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"N-GhAiPBtZfq","executionInfo":{"status":"ok","timestamp":1735212262808,"user_tz":-360,"elapsed":347,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1de6c2d1-b89d-4317-a64c-64becdcf3c50"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: division by zero\n"]}]},{"cell_type":"code","source":["# File Handling Exceptions\n","try:\n"," with open(\"nonexistent_file.txt\", \"r\") as file:\n"," content = file.read()\n","except FileNotFoundError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"c-4Kzy5ntfxy","executionInfo":{"status":"ok","timestamp":1735212312079,"user_tz":-360,"elapsed":350,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ab063071-2379-4a8a-a00b-e8574785f9c4"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: [Errno 2] No such file or directory: 'nonexistent_file.txt'\n"]}]},{"cell_type":"code","source":["# Value-Related Exceptions\n","try:\n"," num = int(\"not_a_number\")\n","except ValueError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"NNskjsFptqxk","executionInfo":{"status":"ok","timestamp":1735212340862,"user_tz":-360,"elapsed":544,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"716797ea-4627-4db2-e696-486b7190c941"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: invalid literal for int() with base 10: 'not_a_number'\n"]}]},{"cell_type":"code","source":["# Type-Related Exceptions\n","try:\n"," result = \"5\" + 5\n","except TypeError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"k4SlwWBotvYV","executionInfo":{"status":"ok","timestamp":1735212365294,"user_tz":-360,"elapsed":343,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"d70ca400-fe29-4dae-f78c-5bda296dfda6"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: can only concatenate str (not \"int\") to str\n"]}]},{"cell_type":"code","source":["# Index or Key-Related Exceptions\n","try:\n"," my_list = [1, 2, 3]\n"," print(my_list[5])\n","except IndexError as e:\n"," print(f\"Error: {e}\")\n","\n","try:\n"," my_dict = {\"a\": 1}\n"," print(my_dict[\"b\"])\n","except KeyError as e:\n"," print(f\"Error: {e}\")\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"pCcTr5JJt3I-","executionInfo":{"status":"ok","timestamp":1735212412174,"user_tz":-360,"elapsed":350,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"f41904d6-21c5-4c60-a01b-e2e415667c3f"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: list index out of range\n","Error: 'b'\n"]}]},{"cell_type":"code","source":["# Import-Related Exceptions\n","try:\n"," import nonexistent_module\n","except ImportError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"pSltwyuEuEeX","executionInfo":{"status":"ok","timestamp":1735212435539,"user_tz":-360,"elapsed":366,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"eed4b34a-7db7-4a72-c39f-df8f85883447"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: No module named 'nonexistent_module'\n"]}]},{"cell_type":"code","source":["# Attribute Access Exceptions\n","try:\n"," my_list = [1, 2, 3]\n"," my_list.append_new_item(4)\n","except AttributeError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"5nF7VQCvuIR4","executionInfo":{"status":"ok","timestamp":1735212461881,"user_tz":-360,"elapsed":334,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"fd5823f3-955f-4a1c-c686-07faf6a42f14"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: 'list' object has no attribute 'append_new_item'\n"]}]},{"cell_type":"code","source":["# Iteration Exceptions\n","try:\n"," iterator = iter([1, 2, 3])\n"," print(next(iterator))\n"," print(next(iterator))\n"," print(next(iterator))\n"," print(next(iterator)) # This raises StopIteration\n","except StopIteration as e:\n"," print(\"Iteration has stopped.\")\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"DFDxXM34uOuZ","executionInfo":{"status":"ok","timestamp":1735212477729,"user_tz":-360,"elapsed":374,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"71083551-1845-4b13-e636-e3677cd29e5d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["1\n","2\n","3\n","Iteration has stopped.\n"]}]},{"cell_type":"code","source":["# Customizing Exception Handling\n","try:\n"," value = int(\"not_a_number\")\n","except (ValueError, TypeError) as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"H8LMBjeBuSlZ","executionInfo":{"status":"ok","timestamp":1735212562381,"user_tz":-360,"elapsed":335,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8a546777-a79c-4c36-d2ea-4a2eeaffd1e2"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: invalid literal for int() with base 10: 'not_a_number'\n"]}]},{"cell_type":"code","source":["# Custom Exceptions\n","class CustomError(Exception):\n"," pass\n","\n","try:\n"," raise CustomError(\"This is a custom error!\")\n","except CustomError as e:\n"," print(f\"Error: {e}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"T0-Bh7XcuhY7","executionInfo":{"status":"ok","timestamp":1735212580976,"user_tz":-360,"elapsed":359,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b5c76525-982e-4513-a3d3-c86a0af70602"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Error: This is a custom error!\n"]}]}]}
python course old/Introduction to Object-Oriented Programming.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"collapsed_sections":["sOdTGyvEXUtb","5Y88ps_3XbVz"],"authorship_tag":"ABX9TyMM5jwVsWKrNCpb2OVGIl/R"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["# `Introduction to Object-Oriented Programming`"],"metadata":{"id":"Jtw8tyqJXNq1"}},{"cell_type":"markdown","source":["# Classes and objects"],"metadata":{"id":"sOdTGyvEXUtb"}},{"cell_type":"code","source":["class demo:\n"," def __init__(self):\n"," print(\"Hello World\")\n","\n","demo()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"BmPnJ1oXghT9","executionInfo":{"status":"ok","timestamp":1736399649834,"user_tz":-360,"elapsed":1244,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0a3dcc9c-2b21-40e2-e45f-5a95a28c2faa"},"execution_count":1,"outputs":[{"output_type":"stream","name":"stdout","text":["Hello World\n"]},{"output_type":"execute_result","data":{"text/plain":["<__main__.demo at 0x7edd654df400>"]},"metadata":{},"execution_count":1}]},{"cell_type":"code","source":["# Defining a Class\n","class Car:\n"," # Class attribute\n"," wheels = 4\n","\n"," # Constructor method\n"," def __init__(self, brand, model):\n"," self.brand = brand # Instance attribute\n"," self.model = model # Instance attribute\n","\n"," # Method\n"," def start(self):\n"," return f\"The {self.brand} {self.model} is starting.\"\n","\n"," def stop(self):\n"," return f\"The {self.brand} {self.model} is stopping.\""],"metadata":{"id":"VyDaxOU-XUNz","executionInfo":{"status":"ok","timestamp":1736400812126,"user_tz":-360,"elapsed":396,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":2,"outputs":[]},{"cell_type":"code","source":["# Creating Objects\n","car1 = Car(\"Toyota\", \"Corolla\")\n","car2 = Car(\"Honda\", \"Civic\")\n","\n","# Accessing attributes\n","print(car1.brand) # Output: Toyota\n","print(car2.model) # Output: Civic\n","\n","# Calling methods\n","print(car1.start()) # Output: The Toyota Corolla is starting.\n","print(car2.stop()) # Output: The Honda Civic is stopping.\n","\n","# Accessing class attributes\n","print(Car.wheels) # Output: 4\n","print(car1.wheels) # Output: 4\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"aXVxMaviYBV_","executionInfo":{"status":"ok","timestamp":1736400814964,"user_tz":-360,"elapsed":384,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"2d59158d-c529-421b-eb93-e14de67e3ae7"},"execution_count":3,"outputs":[{"output_type":"stream","name":"stdout","text":["Toyota\n","Civic\n","The Toyota Corolla is starting.\n","The Honda Civic is stopping.\n","4\n","4\n"]}]},{"cell_type":"markdown","source":["**Key Concepts of OOP**"],"metadata":{"id":"bbcBHiRVYMBg"}},{"cell_type":"code","source":["# Encapsulation\n","class BankAccount:\n"," def __init__(self, balance):\n"," self.__balance = balance # Private attribute\n","\n"," def deposit(self, amount):\n"," self.__balance += amount\n","\n"," def withdraw(self, amount):\n"," if amount > self.__balance:\n"," return \"Insufficient balance\"\n"," self.__balance -= amount\n","\n"," def get_balance(self):\n"," return self.__balance\n","\n","# Using the class\n","account = BankAccount(1000)\n","account.deposit(500)\n","print(account.get_balance()) # Output: 1500"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"hRLc1HW1YLcn","executionInfo":{"status":"ok","timestamp":1736401363092,"user_tz":-360,"elapsed":384,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0d85605d-52d8-4853-ef3f-8c4e9b3819ef"},"execution_count":7,"outputs":[{"output_type":"stream","name":"stdout","text":["1500\n"]}]},{"cell_type":"code","source":["# Inheritance\n","# Parent class\n","class Animal:\n"," def sound(self):\n"," return \"Some generic sound\"\n","\n","# Child class\n","class Dog(Animal):\n"," def sound(self):\n"," return \"Bark\"\n","\n","# Using inheritance\n","dog = Dog()\n","print(dog.sound()) # Output: Bark"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"v7aui9luYWP0","executionInfo":{"status":"ok","timestamp":1735408060975,"user_tz":-360,"elapsed":469,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"2cbe0e6c-a0af-479c-955e-ad3d2dc52a19"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Bark\n"]}]},{"cell_type":"code","source":["# Polymorphism\n","# Polymorphism in action\n","animals = [Animal(), Dog()]\n","for animal in animals:\n"," print(animal.sound())\n","\n","# Output:\n","# Some generic sound\n","# Bark"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"-Judg9FbYZRN","executionInfo":{"status":"ok","timestamp":1735408077687,"user_tz":-360,"elapsed":502,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"fcd2483d-6e31-4cd4-9052-6e471a44b59c"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Some generic sound\n","Bark\n"]}]},{"cell_type":"code","source":["# Abstraction\n","from abc import ABC, abstractmethod\n","\n","class Shape(ABC):\n"," @abstractmethod\n"," def area(self):\n"," pass\n","\n","class Rectangle(Shape):\n"," def __init__(self, length, width):\n"," self.length = length\n"," self.width = width\n","\n"," def area(self):\n"," return self.length * self.width\n","\n","# Using abstraction\n","rect = Rectangle(5, 10)\n","print(rect.area()) # Output: 50"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"nUMDhIIWYeGG","executionInfo":{"status":"ok","timestamp":1735408094512,"user_tz":-360,"elapsed":491,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e74e21ea-0c30-40bf-e6c7-1faeb38a6c45"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["50\n"]}]},{"cell_type":"code","source":["# Special Methods (Magic Methods)\n","class Book:\n"," def __init__(self, title, pages):\n"," self.title = title\n"," self.pages = pages\n","\n"," def __str__(self):\n"," return f\"{self.title} ({self.pages} pages)\"\n","\n"," def __len__(self):\n"," return self.pages\n","\n","# Using special methods\n","book = Book(\"Python Programming\", 350)\n","print(book) # Output: Python Programming (350 pages)\n","print(len(book)) # Output: 350"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ZvwKPjk9Yh5D","executionInfo":{"status":"ok","timestamp":1735408158622,"user_tz":-360,"elapsed":898,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e58e040d-00c9-450b-acbc-b55416526e62"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Python Programming (350 pages)\n","350\n"]}]},{"cell_type":"markdown","source":["# Attributes and methods"],"metadata":{"id":"5Y88ps_3XbVz"}},{"cell_type":"code","source":["# Instance Attributes\n","class Person:\n"," def __init__(self, name, age):\n"," self.name = name # Instance attribute\n"," self.age = age # Instance attribute\n","\n","# Creating objects with instance attributes\n","person1 = Person(\"Alice\", 25)\n","person2 = Person(\"Bob\", 30)\n","\n","print(person1.name) # Output: Alice\n","print(person2.age) # Output: 30"],"metadata":{"id":"2QuJf-9_Xcvl","executionInfo":{"status":"ok","timestamp":1736240364752,"user_tz":-360,"elapsed":974,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"colab":{"base_uri":"https://localhost:8080/"},"outputId":"5783523d-0f19-4be7-d32d-713436d47c43"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Alice\n","30\n"]}]},{"cell_type":"code","source":["# Class Attributes\n","class Car:\n"," wheels = 4 # Class attribute\n","\n"," def __init__(self, brand):\n"," self.brand = brand # Instance attribute\n","\n","# Accessing class attributes\n","car1 = Car(\"Toyota\")\n","car2 = Car(\"Honda\")\n","\n","print(car1.wheels) # Output: 4\n","print(car2.wheels) # Output: 4\n","print(Car.wheels) # Output: 4"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"TuD5VPoC9RYY","executionInfo":{"status":"ok","timestamp":1736240365804,"user_tz":-360,"elapsed":5,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"07efea55-2974-479e-a887-3a37cdcc578b"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["4\n","4\n","4\n"]}]},{"cell_type":"code","source":["# Modifying Attributes\n","car1.wheels = 6 # Changing instance attribute\n","print(car1.wheels) # Output: 6\n","print(car2.wheels) # Output: 4\n","\n","Car.wheels = 8 # Changing class attribute\n","print(car1.wheels) # Output: 6 (already modified at instance level)\n","print(car2.wheels) # Output: 8"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"FnfrH-TM_QYC","executionInfo":{"status":"ok","timestamp":1736240365804,"user_tz":-360,"elapsed":4,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"a6245223-b95e-4375-e54a-c1d2be5f34ff"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["6\n","4\n","6\n","8\n"]}]},{"cell_type":"code","source":["# Instance Methods\n","class Dog:\n"," def __init__(self, name):\n"," self.name = name\n","\n"," def bark(self): # Instance method\n"," return f\"{self.name} says woof!\"\n","\n","# Using instance methods\n","dog = Dog(\"Buddy\")\n","print(dog.bark()) # Output: Buddy says woof!"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"_hpShS33_U5U","executionInfo":{"status":"ok","timestamp":1736240392861,"user_tz":-360,"elapsed":501,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"17006754-4231-4b6d-b851-b0eb306ed4cf"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Buddy says woof!\n"]}]},{"cell_type":"code","source":["# Class Methods\n","class Cat:\n"," species = \"Feline\" # Class attribute\n","\n"," @classmethod\n"," def get_species(cls): # Class method\n"," return cls.species\n","\n","# Using class methods\n","print(Cat.get_species()) # Output: Feline"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"1rMadROo_emi","executionInfo":{"status":"ok","timestamp":1736240408626,"user_tz":-360,"elapsed":504,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"5df0621b-45b7-4b02-ba33-533607b58e72"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Feline\n"]}]},{"cell_type":"code","source":["# Static Methods\n","class MathUtils:\n"," @staticmethod\n"," def add(a, b): # Static method\n"," return a + b\n","\n","# Using static methods\n","print(MathUtils.add(10, 20)) # Output: 30"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"wQBhyHdg_jSN","executionInfo":{"status":"ok","timestamp":1736240431809,"user_tz":-360,"elapsed":515,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"58ff8064-edab-4846-a2be-8b3c96a8b7ad"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["30\n"]}]},{"cell_type":"code","source":["# Special Methods\n","class Book:\n"," def __init__(self, title, pages):\n"," self.title = title\n"," self.pages = pages\n","\n"," def __str__(self): # Defines string representation\n"," return f\"{self.title} ({self.pages} pages)\"\n","\n","# Using special methods\n","book = Book(\"Python Basics\", 300)\n","print(book) # Output: Python Basics (300 pages)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"b0-zX2KC_qy5","executionInfo":{"status":"ok","timestamp":1736240453213,"user_tz":-360,"elapsed":492,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"359289c7-27a7-4a4d-d571-4a2a23a76fb0"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Python Basics (300 pages)\n"]}]},{"cell_type":"code","source":["# Combining Attributes and Methods\n","class BankAccount:\n"," def __init__(self, account_holder, balance):\n"," self.account_holder = account_holder # Instance attribute\n"," self.balance = balance # Instance attribute\n","\n"," def deposit(self, amount): # Instance method\n"," self.balance += amount\n"," return f\"{amount} deposited. New balance: {self.balance}\"\n","\n"," def withdraw(self, amount): # Instance method\n"," if amount > self.balance:\n"," return \"Insufficient funds\"\n"," self.balance -= amount\n"," return f\"{amount} withdrawn. New balance: {self.balance}\"\n","\n","# Using the class\n","account = BankAccount(\"Alice\", 1000)\n","print(account.deposit(500)) # Output: 500 deposited. New balance: 1500\n","print(account.withdraw(2000)) # Output: Insufficient funds"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"NyH7GX5a_t27","executionInfo":{"status":"ok","timestamp":1736240470993,"user_tz":-360,"elapsed":529,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"06f15ab2-74c3-4a4b-e364-e9fb69727e3b"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["500 deposited. New balance: 1500\n","Insufficient funds\n"]}]},{"cell_type":"markdown","source":["# Practice creating classes"],"metadata":{"id":"Z6vColuIXfvA"}},{"cell_type":"code","source":["# A Basic Class\n","class Person:\n"," # Class attribute\n"," species = \"Homo sapiens\"\n","\n"," # Constructor\n"," def __init__(self, name, age):\n"," self.name = name # Instance attribute\n"," self.age = age\n","\n"," # Method\n"," def greet(self):\n"," return f\"Hello, my name is {self.name} and I am {self.age} years old.\"\n","\n","# Create instances\n","person1 = Person(\"Alice\", 30)\n","person2 = Person(\"Bob\", 25)\n","\n","# Access attributes and methods\n","print(person1.greet()) # Output: Hello, my name is Alice and I am 30 years old.\n","print(person2.species) # Output: Homo sapiens"],"metadata":{"id":"MiUD2vgeXhTl"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Using Inheritance\n","class Animal:\n"," def __init__(self, name):\n"," self.name = name\n","\n"," def sound(self):\n"," return \"Some generic animal sound\"\n","\n","class Dog(Animal):\n"," def sound(self):\n"," return \"Bark!\"\n","\n","# Create instances\n","generic_animal = Animal(\"Generic Animal\")\n","dog = Dog(\"Buddy\")\n","\n","# Access methods\n","print(generic_animal.sound()) # Output: Some generic animal sound\n","print(dog.sound()) # Output: Bark!"],"metadata":{"id":"LJMvMw4LCmgz"},"execution_count":null,"outputs":[]}]}
python course old/Mini project combining concepts learned.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyP2zlSVYJ4J50S2+/fCcECX"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"code","execution_count":1,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"kAF1ZFoEGPqX","executionInfo":{"status":"ok","timestamp":1736242306993,"user_tz":-360,"elapsed":64167,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"cc642356-ad04-4339-e3a0-90e237a9d84b"},"outputs":[{"output_type":"stream","name":"stdout","text":["\n","--- Contact Management System ---\n","1. Add Contact\n","2. View Contacts\n","3. Search Contact\n","4. Update Contact\n","5. Delete Contact\n","6. Exit\n","Choose an option: 1\n","Enter contact name: walid\n","Enter phone number: 01792103884\n","Enter email address: walidmunsi@gmail.com\n","Contact added successfully!\n","\n","--- Contact Management System ---\n","1. Add Contact\n","2. View Contacts\n","3. Search Contact\n","4. Update Contact\n","5. Delete Contact\n","6. Exit\n","Choose an option: 2\n","\n","--- Contact List ---\n","Name: walid, Phone: 01792103884, Email: walidmunsi@gmail.com\n","-------------------\n","\n","\n","--- Contact Management System ---\n","1. Add Contact\n","2. View Contacts\n","3. Search Contact\n","4. Update Contact\n","5. Delete Contact\n","6. Exit\n","Choose an option: 6\n","Contacts saved. Goodbye!\n"]}],"source":["# Mini project combining concepts learned\n","import os\n","\n","class ContactManager:\n"," def __init__(self, file_name=\"contacts.txt\"):\n"," self.file_name = file_name\n"," self.contacts = {}\n"," self.load_contacts()\n","\n"," def load_contacts(self):\n"," if os.path.exists(self.file_name):\n"," with open(self.file_name, \"r\") as file:\n"," for line in file:\n"," name, phone, email = line.strip().split(\",\")\n"," self.contacts[name] = {\"phone\": phone, \"email\": email}\n","\n"," def save_contacts(self):\n"," with open(self.file_name, \"w\") as file:\n"," for name, details in self.contacts.items():\n"," file.write(f\"{name},{details['phone']},{details['email']}\\n\")\n","\n"," def add_contact(self):\n"," name = input(\"Enter contact name: \")\n"," if name in self.contacts:\n"," print(\"Contact already exists.\")\n"," return\n"," phone = input(\"Enter phone number: \")\n"," email = input(\"Enter email address: \")\n"," self.contacts[name] = {\"phone\": phone, \"email\": email}\n"," print(\"Contact added successfully!\")\n","\n"," def view_contacts(self):\n"," if not self.contacts:\n"," print(\"No contacts found.\")\n"," return\n"," print(\"\\n--- Contact List ---\")\n"," for name, details in self.contacts.items():\n"," print(f\"Name: {name}, Phone: {details['phone']}, Email: {details['email']}\")\n"," print(\"-------------------\\n\")\n","\n"," def search_contact(self):\n"," name = input(\"Enter contact name to search: \")\n"," if name in self.contacts:\n"," details = self.contacts[name]\n"," print(f\"Name: {name}, Phone: {details['phone']}, Email: {details['email']}\")\n"," else:\n"," print(\"Contact not found.\")\n","\n"," def update_contact(self):\n"," name = input(\"Enter contact name to update: \")\n"," if name in self.contacts:\n"," phone = input(\"Enter new phone number: \")\n"," email = input(\"Enter new email address: \")\n"," self.contacts[name] = {\"phone\": phone, \"email\": email}\n"," print(\"Contact updated successfully!\")\n"," else:\n"," print(\"Contact not found.\")\n","\n"," def delete_contact(self):\n"," name = input(\"Enter contact name to delete: \")\n"," if name in self.contacts:\n"," del self.contacts[name]\n"," print(\"Contact deleted successfully!\")\n"," else:\n"," print(\"Contact not found.\")\n","\n"," def main_menu(self):\n"," while True:\n"," print(\"\\n--- Contact Management System ---\")\n"," print(\"1. Add Contact\")\n"," print(\"2. View Contacts\")\n"," print(\"3. Search Contact\")\n"," print(\"4. Update Contact\")\n"," print(\"5. Delete Contact\")\n"," print(\"6. Exit\")\n"," choice = input(\"Choose an option: \")\n"," if choice == \"1\":\n"," self.add_contact()\n"," elif choice == \"2\":\n"," self.view_contacts()\n"," elif choice == \"3\":\n"," self.search_contact()\n"," elif choice == \"4\":\n"," self.update_contact()\n"," elif choice == \"5\":\n"," self.delete_contact()\n"," elif choice == \"6\":\n"," self.save_contacts()\n"," print(\"Contacts saved. Goodbye!\")\n"," break\n"," else:\n"," print(\"Invalid choice. Please try again.\")\n","\n","if __name__ == \"__main__\":\n"," manager = ContactManager()\n"," manager.main_menu()"]},{"cell_type":"code","source":[],"metadata":{"id":"8-9g8oXoGeBr"},"execution_count":null,"outputs":[]}]}
python course old/Module and Packages.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyN7XBdrJC7vDkLfGHN21HeS"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["# `Module and Packages`"],"metadata":{"id":"Z37XvMpG7ZcS"}},{"cell_type":"markdown","source":["# Importing standard modules"],"metadata":{"id":"Id_Y3wQX7bR2"}},{"cell_type":"code","execution_count":5,"metadata":{"id":"hZsqY54c7SWg","executionInfo":{"status":"ok","timestamp":1735400786328,"user_tz":-360,"elapsed":513,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"outputs":[],"source":["# Basic Syntax for Importing Modules\n","\n","# Importing an entire module\n","import tensorflow\n","\n","# Importing a specific function or class from a module\n","from tensorflow import keras\n","\n","# Importing a module and aliasing it\n","import tensorflow as tf\n","\n","# Importing multiple functions or classes from a module\n","from tensorflow import keras, initializers"]},{"cell_type":"code","source":["# Importing an Entire Module\n","import math\n","\n","result = math.sqrt(25)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"AMMUiM8I8uag","executionInfo":{"status":"ok","timestamp":1735400847620,"user_tz":-360,"elapsed":503,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"7abed226-188a-4430-ab3c-1cbf7c92a18c"},"execution_count":9,"outputs":[{"output_type":"stream","name":"stdout","text":["5.0\n"]}]},{"cell_type":"code","source":["# Importing Specific Functions or Classes\n","from math import sqrt\n","\n","result = sqrt(25)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"jFlFmUfd8xr9","executionInfo":{"status":"ok","timestamp":1735400876052,"user_tz":-360,"elapsed":9,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"d75bbe63-062e-4857-eb3f-f7eb5bb2456c"},"execution_count":10,"outputs":[{"output_type":"stream","name":"stdout","text":["5.0\n"]}]},{"cell_type":"code","source":["# Importing with Aliases\n","import math as m\n","\n","result = m.sqrt(25)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"CFtYL04K9Lyv","executionInfo":{"status":"ok","timestamp":1735400973104,"user_tz":-360,"elapsed":563,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"bee3d0fb-1931-46a7-a553-35be48ddeea1"},"execution_count":11,"outputs":[{"output_type":"stream","name":"stdout","text":["5.0\n"]}]},{"cell_type":"code","source":["# Importing Multiple Functions or Classes\n","from math import sqrt, pi\n","\n","print(sqrt(16))\n","print(pi)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ez3jJY5N9V3Y","executionInfo":{"status":"ok","timestamp":1735401020635,"user_tz":-360,"elapsed":547,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e82a131d-501b-49a7-c41b-7b859d9c3199"},"execution_count":12,"outputs":[{"output_type":"stream","name":"stdout","text":["4.0\n","3.141592653589793\n"]}]},{"cell_type":"markdown","source":["**Commonly Used Standard Python Modules**"],"metadata":{"id":"dcCpQQ2C9zwT"}},{"cell_type":"code","source":["# math - Mathematical operations (e.g., sqrt(), pow(), sin(), cos()).\n","import math\n","print(math.pi)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"rVerNP8w9iQd","executionInfo":{"status":"ok","timestamp":1735401148977,"user_tz":-360,"elapsed":595,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"5811dd60-235e-4588-c6a8-1a1924b5581e"},"execution_count":13,"outputs":[{"output_type":"stream","name":"stdout","text":["3.141592653589793\n"]}]},{"cell_type":"code","source":["# os - Interacting with the operating system (e.g., file management, directory structure).\n","import os\n","print(os.getcwd())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"edCtiYxB-DLr","executionInfo":{"status":"ok","timestamp":1735401184386,"user_tz":-360,"elapsed":574,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"3f2b77a4-584e-495f-bee6-0ec4fa9f6c87"},"execution_count":14,"outputs":[{"output_type":"stream","name":"stdout","text":["/content\n"]}]},{"cell_type":"code","source":["# sys - Provides access to system-specific parameters and functions.\n","import sys\n","print(sys.version)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"X1yAaIRa-Jct","executionInfo":{"status":"ok","timestamp":1735401281841,"user_tz":-360,"elapsed":523,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0212f863-c35e-4307-f495-c0d33b328d28"},"execution_count":15,"outputs":[{"output_type":"stream","name":"stdout","text":["3.10.12 (main, Nov 6 2024, 20:22:13) [GCC 11.4.0]\n"]}]},{"cell_type":"code","source":["# random - Random number generation (e.g., randint(), choice()).\n","import random\n","print(random.randint(1, 100))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"SwHULM9_-hQI","executionInfo":{"status":"ok","timestamp":1735401329286,"user_tz":-360,"elapsed":544,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"27b37140-b489-4607-f0d1-4fb98dae5fb8"},"execution_count":17,"outputs":[{"output_type":"stream","name":"stdout","text":["59\n"]}]},{"cell_type":"code","source":["# time - Time-related functions (e.g., sleep(), time()).\n","import time\n","print(time.time())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"8WjAC1U3-r7M","executionInfo":{"status":"ok","timestamp":1735402009119,"user_tz":-360,"elapsed":533,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"341b6e00-72b0-447d-e422-e570b39fdb83"},"execution_count":18,"outputs":[{"output_type":"stream","name":"stdout","text":["1735402009.4303534\n"]}]},{"cell_type":"code","source":["# datetime - Work with dates and times (e.g., datetime.now(), timedelta).\n","import datetime\n","print(datetime.datetime.now())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"GAnwwYurBSzy","executionInfo":{"status":"ok","timestamp":1735402050961,"user_tz":-360,"elapsed":556,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"a1ae7c0f-26e8-48ba-ef9c-12c14b5cfbc9"},"execution_count":19,"outputs":[{"output_type":"stream","name":"stdout","text":["2024-12-28 16:07:31.230078\n"]}]},{"cell_type":"code","source":["# json - JSON parsing and serialization.\n","import json\n","data = {'name': 'Alice', 'age': 25, 'Student':True}\n","json_str = json.dumps(data)\n","print(json_str)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"bPdZewRRBdBI","executionInfo":{"status":"ok","timestamp":1735402166126,"user_tz":-360,"elapsed":499,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"50ad63fe-3938-411d-cb2b-a2833dde1710"},"execution_count":22,"outputs":[{"output_type":"stream","name":"stdout","text":["{\"name\": \"Alice\", \"age\": 25, \"Student\": true}\n"]}]},{"cell_type":"code","source":["# re - Regular expressions for pattern matching.\n","import re\n","pattern = r\"\\d+\"\n","text = \"There are 123 apples.\"\n","match = re.search(pattern, text)\n","if match:\n"," print(match.group())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"3myRsdzBBhUQ","executionInfo":{"status":"ok","timestamp":1735402265106,"user_tz":-360,"elapsed":549,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6ab711dc-3683-4777-de64-152e808ecb27"},"execution_count":25,"outputs":[{"output_type":"stream","name":"stdout","text":["123\n"]}]},{"cell_type":"code","source":["# collections - Specialized container datatypes (e.g., Counter, deque, defaultdict).\n","from collections import Counter\n","counts = Counter([1, 2, 2, 3, 3, 3])\n","print(counts)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ENfMSfgTCWDK","executionInfo":{"status":"ok","timestamp":1735402358246,"user_tz":-360,"elapsed":502,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6465c064-37e3-49bb-e9f4-df5bd6e4077e"},"execution_count":26,"outputs":[{"output_type":"stream","name":"stdout","text":["Counter({3: 3, 2: 2, 1: 1})\n"]}]},{"cell_type":"code","source":["# Importing Multiple Modules\n","import math, sys, os"],"metadata":{"id":"nvXRP2MnCoBk","executionInfo":{"status":"ok","timestamp":1735406047156,"user_tz":-360,"elapsed":582,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":27,"outputs":[]},{"cell_type":"code","source":["# Importing Submodules\n","import matplotlib.pyplot as plt"],"metadata":{"id":"RyTSRkfaQvkc","executionInfo":{"status":"ok","timestamp":1735406069368,"user_tz":-360,"elapsed":4,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":28,"outputs":[]},{"cell_type":"markdown","source":["# Creating custom modules"],"metadata":{"id":"ERWFrzHzQ352"}},{"cell_type":"code","source":["# Create the Module (math_operations.py)\n","\n","def add(x, y):\n"," return x + y\n","\n","def subtract(x, y):\n"," return x - y\n","\n","def multiply(x, y):\n"," return x * y\n","\n","def divide(x, y):\n"," if y == 0:\n"," raise ValueError(\"Cannot divide by zero\")\n"," return x / y"],"metadata":{"id":"Y_MeOp0RQ6Gl","executionInfo":{"status":"ok","timestamp":1735406245536,"user_tz":-360,"elapsed":502,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":29,"outputs":[]},{"cell_type":"code","source":["# Import the Module (main.py)\n","\n","# import math_operations\n","\n","# a = 10\n","# b = 5\n","\n","# print(\"Addition:\", math_operations.add(a, b))\n","# print(\"Subtraction:\", math_operations.subtract(a, b))\n","# print(\"Multiplication:\", math_operations.multiply(a, b))\n","# print(\"Division:\", math_operations.divide(a, b))\n"],"metadata":{"id":"TkPJzVLwRi_g","executionInfo":{"status":"ok","timestamp":1735406391004,"user_tz":-360,"elapsed":592,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":30,"outputs":[]},{"cell_type":"markdown","source":["# Overview of popular packages (NumPy, Pandas)"],"metadata":{"id":"4R4kk1nASn4f"}},{"cell_type":"code","source":["import numpy as np\n","\n","# Create a NumPy array\n","arr = np.array([1, 2, 3, 4, 5])\n","\n","# Basic mathematical operations\n","arr_sum = np.sum(arr)\n","arr_mean = np.mean(arr)\n","arr_max = np.max(arr)\n","\n","# Element-wise operations (vectorized)\n","arr_squared = arr ** 2\n","\n","# Reshaping arrays\n","arr_reshaped = arr.reshape((1, 5))\n","\n","# Create a 2D array (matrix)\n","matrix = np.array([[1, 2], [3, 4]])\n","\n","# Matrix multiplication\n","result = np.dot(matrix, matrix)"],"metadata":{"id":"KIfIdM9nSpbp","executionInfo":{"status":"ok","timestamp":1735406573453,"user_tz":-360,"elapsed":544,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":31,"outputs":[]},{"cell_type":"code","source":["import pandas as pd\n","\n","# Create a DataFrame from a dictionary\n","data = {\n"," 'Name': ['Alice', 'Bob', 'Charlie', 'David'],\n"," 'Age': [24, 27, 22, 32],\n"," 'Salary': [50000, 55000, 40000, 60000]\n","}\n","df = pd.DataFrame(data)\n","\n","# View the first few rows of the DataFrame\n","df.head()\n","\n","# Filter rows based on conditions\n","df_filtered = df[df['Age'] > 25]\n","\n","# Grouping data and calculating aggregate statistics\n","df_grouped = df.groupby('Age')['Salary'].mean()\n","\n","# Sorting data\n","df_sorted = df.sort_values(by='Salary', ascending=False)\n","\n","# Handle missing data\n","df_filled = df.fillna(0)\n","\n","# Write data to a CSV file\n","df.to_csv('data.csv', index=False)\n","\n","# Read data from a CSV file\n","df_csv = pd.read_csv('data.csv')\n","df_csv"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":174},"id":"TA3AIsbVSt5j","executionInfo":{"status":"ok","timestamp":1735406669066,"user_tz":-360,"elapsed":20,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1308257c-306f-4856-9e2e-42055bc516ff"},"execution_count":34,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Name Age Salary\n","0 Alice 24 50000\n","1 Bob 27 55000\n","2 Charlie 22 40000\n","3 David 32 60000"],"text/html":["\n"," <div id=\"df-75464680-d1d4-4e5a-8cad-0cdfc832791f\" class=\"colab-df-container\">\n"," <div>\n","<style scoped>\n"," .dataframe tbody tr th:only-of-type {\n"," vertical-align: middle;\n"," }\n","\n"," .dataframe tbody tr th {\n"," vertical-align: top;\n"," }\n","\n"," .dataframe thead th {\n"," text-align: right;\n"," }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n"," <thead>\n"," <tr style=\"text-align: right;\">\n"," <th></th>\n"," <th>Name</th>\n"," <th>Age</th>\n"," <th>Salary</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>Alice</td>\n"," <td>24</td>\n"," <td>50000</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td>Bob</td>\n"," <td>27</td>\n"," <td>55000</td>\n"," </tr>\n"," <tr>\n"," <th>2</th>\n"," <td>Charlie</td>\n"," <td>22</td>\n"," <td>40000</td>\n"," </tr>\n"," <tr>\n"," <th>3</th>\n"," <td>David</td>\n"," <td>32</td>\n"," <td>60000</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>\n"," <div class=\"colab-df-buttons\">\n","\n"," <div class=\"colab-df-container\">\n"," <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-75464680-d1d4-4e5a-8cad-0cdfc832791f')\"\n"," title=\"Convert this dataframe to an interactive table.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n"," <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n"," </svg>\n"," </button>\n","\n"," <style>\n"," .colab-df-container {\n"," display:flex;\n"," gap: 12px;\n"," }\n","\n"," .colab-df-convert {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-convert:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," .colab-df-buttons div {\n"," margin-bottom: 4px;\n"," }\n","\n"," [theme=dark] .colab-df-convert {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-convert:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n","\n"," <script>\n"," const buttonEl =\n"," document.querySelector('#df-75464680-d1d4-4e5a-8cad-0cdfc832791f button.colab-df-convert');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," async function convertToInteractive(key) {\n"," const element = document.querySelector('#df-75464680-d1d4-4e5a-8cad-0cdfc832791f');\n"," const dataTable =\n"," await google.colab.kernel.invokeFunction('convertToInteractive',\n"," [key], {});\n"," if (!dataTable) return;\n","\n"," const docLinkHtml = 'Like what you see? Visit the ' +\n"," '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n"," + ' to learn more about interactive tables.';\n"," element.innerHTML = '';\n"," dataTable['output_type'] = 'display_data';\n"," await google.colab.output.renderOutput(dataTable, element);\n"," const docLink = document.createElement('div');\n"," docLink.innerHTML = docLinkHtml;\n"," element.appendChild(docLink);\n"," }\n"," </script>\n"," </div>\n","\n","\n","<div id=\"df-a9e455ba-95cd-470c-9760-e4af5161a0b2\">\n"," <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-a9e455ba-95cd-470c-9760-e4af5161a0b2')\"\n"," title=\"Suggest charts\"\n"," style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <g>\n"," <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n"," </g>\n","</svg>\n"," </button>\n","\n","<style>\n"," .colab-df-quickchart {\n"," --bg-color: #E8F0FE;\n"," --fill-color: #1967D2;\n"," --hover-bg-color: #E2EBFA;\n"," --hover-fill-color: #174EA6;\n"," --disabled-fill-color: #AAA;\n"," --disabled-bg-color: #DDD;\n"," }\n","\n"," [theme=dark] .colab-df-quickchart {\n"," --bg-color: #3B4455;\n"," --fill-color: #D2E3FC;\n"," --hover-bg-color: #434B5C;\n"," --hover-fill-color: #FFFFFF;\n"," --disabled-bg-color: #3B4455;\n"," --disabled-fill-color: #666;\n"," }\n","\n"," .colab-df-quickchart {\n"," background-color: var(--bg-color);\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: var(--fill-color);\n"," height: 32px;\n"," padding: 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-quickchart:hover {\n"," background-color: var(--hover-bg-color);\n"," box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: var(--button-hover-fill-color);\n"," }\n","\n"," .colab-df-quickchart-complete:disabled,\n"," .colab-df-quickchart-complete:disabled:hover {\n"," background-color: var(--disabled-bg-color);\n"," fill: var(--disabled-fill-color);\n"," box-shadow: none;\n"," }\n","\n"," .colab-df-spinner {\n"," border: 2px solid var(--fill-color);\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," animation:\n"," spin 1s steps(1) infinite;\n"," }\n","\n"," @keyframes spin {\n"," 0% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," border-left-color: var(--fill-color);\n"," }\n"," 20% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 30% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," border-right-color: var(--fill-color);\n"," }\n"," 40% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 60% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," }\n"," 80% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-bottom-color: var(--fill-color);\n"," }\n"," 90% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," }\n"," }\n","</style>\n","\n"," <script>\n"," async function quickchart(key) {\n"," const quickchartButtonEl =\n"," document.querySelector('#' + key + ' button');\n"," quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n"," quickchartButtonEl.classList.add('colab-df-spinner');\n"," try {\n"," const charts = await google.colab.kernel.invokeFunction(\n"," 'suggestCharts', [key], {});\n"," } catch (error) {\n"," console.error('Error during call to suggestCharts:', error);\n"," }\n"," quickchartButtonEl.classList.remove('colab-df-spinner');\n"," quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n"," }\n"," (() => {\n"," let quickchartButtonEl =\n"," document.querySelector('#df-a9e455ba-95cd-470c-9760-e4af5161a0b2 button');\n"," quickchartButtonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n"," })();\n"," </script>\n","</div>\n","\n"," <div id=\"id_094caba6-abb2-4008-acbe-084a4adb234d\">\n"," <style>\n"," .colab-df-generate {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-generate:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," [theme=dark] .colab-df-generate {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-generate:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n"," <button class=\"colab-df-generate\" onclick=\"generateWithVariable('df_csv')\"\n"," title=\"Generate code using this dataframe.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n"," </svg>\n"," </button>\n"," <script>\n"," (() => {\n"," const buttonEl =\n"," document.querySelector('#id_094caba6-abb2-4008-acbe-084a4adb234d button.colab-df-generate');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," buttonEl.onclick = () => {\n"," google.colab.notebook.generateWithVariable('df_csv');\n"," }\n"," })();\n"," </script>\n"," </div>\n","\n"," </div>\n"," </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df_csv","summary":"{\n \"name\": \"df_csv\",\n \"rows\": 4,\n \"fields\": [\n {\n \"column\": \"Name\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 4,\n \"samples\": [\n \"Bob\",\n \"David\",\n \"Alice\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 4,\n \"min\": 22,\n \"max\": 32,\n \"num_unique_values\": 4,\n \"samples\": [\n 27,\n 32,\n 24\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Salary\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8539,\n \"min\": 40000,\n \"max\": 60000,\n \"num_unique_values\": 4,\n \"samples\": [\n 55000,\n 60000,\n 50000\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":34}]}]}
python course old/Session/Functions And Dictionaries Practice problem.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[]},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["Function"],"metadata":{"id":"FejNgtpuyzkc"}},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"wAaYEVvGyxen","executionInfo":{"status":"ok","timestamp":1733549772692,"user_tz":-360,"elapsed":662,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8add8ff1-3b39-48c5-e08d-1b7da3656b81"},"outputs":[{"output_type":"stream","name":"stdout","text":["Even\n","Odd\n"]}],"source":["# Write a Python function even_odd(n) that takes an integer n as input and prints \"Even\" if the number is even and \"Odd\" if the number is odd.\n","def even_odd(n):\n"," if n % 2 == 0:\n"," print(\"Even\")\n"," else:\n"," print(\"Odd\")\n","\n","even_odd(24)\n","even_odd(71)"]},{"cell_type":"code","source":["\"\"\"\n","Write a function divideOnly(n) that prints numbers from 1 to n with special labels:\n","\"divide by 3 or 5\" for numbers divisible by both 3 and 5.\n","\"divide by 3\" for numbers divisible by 3 only.\n","\"divide by 5\" for numbers divisible by 5 only.\n","Otherwise, print the number.\n","What is the output of divideOnly(10)?\n","\"\"\"\n","def divideOnly(n):\n"," for i in range(1, n + 1):\n"," if i % 3 == 0 and i % 5 == 0:\n"," print(\"divide by 3 or 5\")\n"," elif i % 3 == 0:\n"," print(\"divide by 3\")\n"," elif i % 5 == 0:\n"," print(\"divide by 5\")\n"," else:\n"," print(i)\n","\n","divideOnly(10)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"k0z2gbpmzJG4","executionInfo":{"status":"ok","timestamp":1733039829652,"user_tz":-360,"elapsed":4,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"6b5b43fc-8a74-4be6-f722-1d88e571099d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["1\n","2\n","divide by 3\n","4\n","divide by 5\n","divide by 3\n","7\n","8\n","divide by 3\n","divide by 5\n"]}]},{"cell_type":"code","source":["# Write a recursive function factorial(n) that calculates the factorial of a number n.\n","def factorial(n):\n"," if n == 1:\n"," return 1\n"," else:\n"," result = n * factorial(n - 1)\n"," return result\n","\n","print(factorial(5))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"jAGonT6X0l7I","executionInfo":{"status":"ok","timestamp":1733039829652,"user_tz":-360,"elapsed":3,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"1e51b571-12a4-448a-9264-d30514d2fcad"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["120\n"]}]},{"cell_type":"code","source":["# Write a Python function number_pattern() that prints a right-angled triangle pattern of asterisks (*) based on the number of rows. Each row contains one more asterisk than the previous row.\n","def number_pattern(rows):\n"," for i in range(1, rows + 1):\n"," for j in range(1, i + 1):\n"," print('*', end=\" \")\n"," print()\n","\n","number_pattern(5)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"oYhli8lf081J","executionInfo":{"status":"ok","timestamp":1733039829652,"user_tz":-360,"elapsed":1,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"86126279-5326-4ff6-a481-6a4061d074f5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["* \n","* * \n","* * * \n","* * * * \n","* * * * * \n"]}]},{"cell_type":"code","source":["# Write a Python function number_pattern(rows) that prints an inverted right-angled triangle pattern of asterisks (*). The number of asterisks starts with rows in the first row and decreases by one in each subsequent row.\n","def number_pattern(rows):\n"," for i in range(rows, 0, -1):\n"," for j in range(1, i + 1):\n"," print('*', end=\" \")\n"," print()\n","\n","number_pattern(5)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"vwceCdLq2Qh6","executionInfo":{"status":"ok","timestamp":1733039830143,"user_tz":-360,"elapsed":17,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"feba2385-d18c-43e6-921b-8ae483069055"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["* * * * * \n","* * * * \n","* * * \n","* * \n","* \n"]}]},{"cell_type":"code","source":["\"\"\"\n","Write a Python function grade_calculator() that calculates grades based on the given score:\n","\"A+\" for scores 80 and above.\n","\"A\" for scores 70–79.\n","\"A-\" for scores 60–69.\n","\"B\" for scores 50–59.\n","\"C\" for scores 40–49.\n","\"D\" for scores 33–39.\n","\"F\" for scores below 33.\n","Return \"Invalid score\" for inputs below 0 or above 100.\n","\"\"\"\n","def grade_calculator(score):\n"," if score < 0 or score > 100:\n"," return \"Invalid score\"\n"," elif score >= 80:\n"," return \"A+\"\n"," elif score >= 70:\n"," return \"A\"\n"," elif score >= 60:\n"," return \"A-\"\n"," elif score >= 50:\n"," return \"B\"\n"," elif score >= 40:\n"," return \"C\"\n"," elif score >= 33:\n"," return \"D\"\n"," else:\n"," return \"F\"\n","\n","print(grade_calculator(85))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"67sYOVkD2_OP","executionInfo":{"status":"ok","timestamp":1733484029667,"user_tz":-360,"elapsed":1116,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1f95e3df-18b6-4496-8c16-f1184a1c1f4b"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["A+\n"]}]},{"cell_type":"code","source":["# Write a Python function is_prime(n) that checks if a number n is a prime number.\n","def is_prime(n):\n"," if n <= 1:\n"," return False\n"," for i in range(2, n):\n"," if n % i == 0:\n"," return False\n"," return True\n","\n","number = 2\n","if is_prime(number):\n"," print(f\"{number} is a prime number.\")\n","else:\n"," print(f\"{number} is not a prime number.\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"vOSGwRYs51Xp","executionInfo":{"status":"ok","timestamp":1733039830143,"user_tz":-360,"elapsed":14,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"213e8326-3abe-426b-f30b-b8b801707995"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["2 is a prime number.\n"]}]},{"cell_type":"code","source":["# Write a Python function get_key_by_value(d, value) that takes a dictionary d and a value value, and returns the key associated with that value. If the value is not found, return None.\n","def get_key_by_value(d, value):\n"," for key, val in d.items():\n"," if val == value:\n"," return key\n"," return None\n","\n","my_dict = {\"a\": 1, \"b\": 2, \"c\": 3}\n","print(get_key_by_value(my_dict, 2))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Ggb8JeYG7urE","executionInfo":{"status":"ok","timestamp":1733484510441,"user_tz":-360,"elapsed":469,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"18790fd2-0af0-46cf-9d74-eb318118d18e"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["b\n"]}]},{"cell_type":"code","source":["# Write a Python function update_dict_value(d, key, value) that updates the value of a given key in the dictionary d with the new value. Return the updated dictionary.\n","def update_dict_value(d, key, value):\n"," d[key] = value\n"," return d\n","\n","my_dict = {\"a\": 1, \"b\": 2}\n","print(update_dict_value(my_dict, \"b\", 5))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"X-7OOS108Qyv","executionInfo":{"status":"ok","timestamp":1733039830143,"user_tz":-360,"elapsed":13,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"72c2fa37-70e2-4cf7-d3dc-6d65b3e341f9"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'a': 1, 'b': 5}\n"]}]},{"cell_type":"code","source":["# Write a Python function remove_key(d, key) that removes a specified key from the dictionary d. If the key exists, it should be deleted. Return the updated dictionary.\n","def remove_key(d, key):\n"," if key in d:\n"," del d[key]\n"," return d\n","\n","my_dict = {\"a\": 1, \"b\": 2, \"c\": 3}\n","print(remove_key(my_dict, \"b\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"qKvVm5Ft8ZuY","executionInfo":{"status":"ok","timestamp":1733039830143,"user_tz":-360,"elapsed":12,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"2f4844b7-00e4-4546-f199-48ccb48017ee"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'a': 1, 'c': 3}\n"]}]},{"cell_type":"code","source":["# Write a Python function key_exists(d, key) that checks if a given key exists in the dictionary d.\n","def key_exists(d, key):\n"," return key in d\n","\n","my_dict = {\"a\": 1, \"b\": 2, \"c\": 3}\n","print(key_exists(my_dict, \"b\"))\n","print(key_exists(my_dict, \"d\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"zr-jJTBS8iqy","executionInfo":{"status":"ok","timestamp":1733039830143,"user_tz":-360,"elapsed":11,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"f312be5b-6a1b-4647-8357-39a089eb42ff"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["True\n","False\n"]}]},{"cell_type":"code","source":["# Write a Python function traverse_nested_dict(d) that recursively traverses through a nested dictionary d. The function should print each key-value pair, and if the value is another dictionary, it should recurse into that dictionary.\n","def traverse_nested_dict(d):\n"," for key, value in d.items():\n"," if isinstance(value, dict):\n"," print(f\"{key}:\")\n"," traverse_nested_dict(value)\n"," else:\n"," print(f\"{key}: {value}\")\n","\n","nested_dict = {\"a\": 1, \"b\": {\"x\": 10, \"y\": 20}, \"c\": 3}\n","traverse_nested_dict(nested_dict)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"1iVtZSHV8or6","executionInfo":{"status":"ok","timestamp":1733485190157,"user_tz":-360,"elapsed":381,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1e410662-e215-41dc-ae1a-81c4f26c13eb"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["a: 1\n","b:\n","x: 10\n","y: 20\n","c: 3\n"]}]},{"cell_type":"code","source":["bubt_students = {\n"," 'squadName': 'BUBT Students',\n"," 'homeTown': 'Dhaka',\n"," 'formed': 2003,\n"," 'secretBase': 'BUBT Campus',\n"," 'active': True,\n"," 'members': [\n"," {\n"," 'name': 'Arif Hasan',\n"," 'age': 22,\n"," 'secretIdentity': 'Arif',\n"," 'powers': ['ProblemSolving', 'Coding', 'WebDevelopment', 'Speed']\n"," },\n"," {\n"," 'name': 'Sakina Rahman',\n"," 'age': 21,\n"," 'secretIdentity': 'Sakina',\n"," 'powers': ['Designing', 'Creativity', 'Graphics', 'UXKnowledge']\n"," },\n"," {\n"," 'name': 'Tariq Ahmed',\n"," 'age': 23,\n"," 'secretIdentity': 'Tariq',\n"," 'powers': ['Mathematics', 'Optimization', 'DataAnalysis', 'ProblemSolving']\n"," },\n"," {\n"," 'name': 'Nadia Rahman',\n"," 'age': 22,\n"," 'secretIdentity': 'Nadia',\n"," 'powers': ['Leadership', 'Planning', 'ProblemSolving', 'WebDevelopment']\n"," }\n"," ]\n","}\n"],"metadata":{"id":"ZxibEapN9Wak"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["def add_student(name, age, secret_identity, powers):\n"," new_student = {\n"," \"name\": name,\n"," \"age\": age,\n"," \"secretIdentity\": secret_identity,\n"," \"powers\": powers\n"," }\n"," bubt_students['members'].append(new_student)\n"," print(f\"Student {name} added successfully!\")\n","\n","add_student(\"Razaul Islam\", 24, \"Razaul\", [\"Great at AI\", \"Expert in Machine Learning\", \"Can analyze large datasets\"])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"KeNELY09KFqB","executionInfo":{"status":"ok","timestamp":1733485206967,"user_tz":-360,"elapsed":395,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"7009be91-7a58-46f2-b886-072e05fd9011"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Student Razaul Islam added successfully!\n"]}]},{"cell_type":"code","source":["def get_student(name):\n"," for student in bubt_students['members']:\n"," if student['name'] == name:\n"," return student\n"," return f\"Student {name} not found.\"\n","\n","print(get_student(\"Arif Hasan\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"uj0wTHeBM3o6","executionInfo":{"status":"ok","timestamp":1733485210016,"user_tz":-360,"elapsed":387,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"49b0d6a1-ee82-4a66-afbc-ab381aaaa039"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'name': 'Arif Hasan', 'age': 22, 'secretIdentity': 'Arif', 'powers': ['ProblemSolving', 'Coding', 'WebDevelopment', 'Speed']}\n"]}]},{"cell_type":"code","source":["def update_student(name, new_age=None, new_powers=None):\n"," for student in bubt_students['members']:\n"," if student['name'] == name:\n"," if new_age:\n"," student['age'] = new_age\n"," if new_powers:\n"," student['powers'] = new_powers\n"," print(f\"Student {name} updated successfully!\")\n"," return\n"," print(f\"Student {name} not found.\")\n","\n","update_student(\"Sakina Rahman\", new_age=22, new_powers=[\"Creative with new designs\", \"Knows how to design mobile apps\"])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"WzhNnXvENLus","executionInfo":{"status":"ok","timestamp":1733485219957,"user_tz":-360,"elapsed":374,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ca8eb4e1-2434-4e17-820f-c6d0a838f8df"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Student Sakina Rahman updated successfully!\n"]}]},{"cell_type":"code","source":["def delete_student(name):\n"," for student in bubt_students['members']:\n"," if student['name'] == name:\n"," bubt_students['members'].remove(student)\n"," print(f\"Student {name} deleted successfully!\")\n"," return\n"," print(f\"Student {name} not found.\")\n","\n","\n","delete_student(\"Tariq Ahmed\")"],"metadata":{"id":"eDx3vLt0CMkE","executionInfo":{"status":"ok","timestamp":1733485222854,"user_tz":-360,"elapsed":409,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"20b1791f-2392-40d6-92d7-ef5bf4e392e4","colab":{"base_uri":"https://localhost:8080/"}},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Student Tariq Ahmed deleted successfully!\n"]}]},{"cell_type":"code","source":["faculty = {\n"," 'Sudipto Chaki': {\n"," 'name': 'Sudipto Chaki',\n"," 'position': {\n"," 'title': 'Assistant Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'SCK',\n"," 'Email': 'sudiptochakibd@gmail.com',\n"," },\n"," 'details': {\n"," 'class rating': '5',\n"," 'Specialist': 'AI',\n"," 'skills': ['Python', 'ML', 'GenAI']\n"," }\n"," },\n"," 'Anika Rahman': {\n"," 'name': 'Anika Rahman',\n"," 'position': {\n"," 'title': 'Lecturer',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'ARK',\n"," 'Email': 'anika.rahman@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '4.7',\n"," 'Specialist': 'Cybersecurity',\n"," 'skills': ['Ethical Hacking', 'Network Security', 'Python']\n"," }\n"," },\n"," 'Tanvir Ahmed': {\n"," 'name': 'Tanvir Ahmed',\n"," 'position': {\n"," 'title': 'Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'TAH',\n"," 'Email': 'tanvir.ahmed@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '5',\n"," 'Specialist': 'Software Engineering',\n"," 'skills': ['Java', 'Agile Methodologies', 'System Design']\n"," }\n"," },\n"," 'Mahi Hasan': {\n"," 'name': 'Mahi Hasan',\n"," 'position': {\n"," 'title': 'Assistant Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'MHN',\n"," 'Email': 'mahi.hasan@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '4.8',\n"," 'Specialist': 'Robotics',\n"," 'skills': ['Robotics', 'C++', 'ROS']\n"," }\n"," },\n"," 'Sadia Islam': {\n"," 'name': 'Sadia Islam',\n"," 'position': {\n"," 'title': 'Lecturer',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'SIS',\n"," 'Email': 'sadia.islam@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '4.6',\n"," 'Specialist': 'NLP',\n"," 'skills': ['NLP', 'Python', 'Hugging Face']\n"," }\n"," },\n"," 'Rafiq Rahman': {\n"," 'name': 'Rafiq Rahman',\n"," 'position': {\n"," 'title': 'Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'RRN',\n"," 'Email': 'rafiq.rahman@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '5',\n"," 'Specialist': 'Data Science',\n"," 'skills': ['R', 'Python', 'Pandas']\n"," }\n"," },\n"," 'Tania Akter': {\n"," 'name': 'Tania Akter',\n"," 'position': {\n"," 'title': 'Lecturer',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'TAR',\n"," 'Email': 'tania.akter@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '4.5',\n"," 'Specialist': 'Computer Vision',\n"," 'skills': ['OpenCV', 'Deep Learning', 'TensorFlow']\n"," }\n"," },\n"," 'Nafis Hossain': {\n"," 'name': 'Nafis Hossain',\n"," 'position': {\n"," 'title': 'Assistant Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'NHN',\n"," 'Email': 'nafis.hossain@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '4.9',\n"," 'Specialist': 'Cloud Computing',\n"," 'skills': ['AWS', 'Azure', 'Kubernetes']\n"," }\n"," },\n"," 'Farzana Alam': {\n"," 'name': 'Farzana Alam',\n"," 'position': {\n"," 'title': 'Lecturer',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'FAN',\n"," 'Email': 'farzana.alam@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '4.6',\n"," 'Specialist': 'Human-Computer Interaction',\n"," 'skills': ['UI/UX Design', 'Prototyping', 'Figma']\n"," }\n"," },\n"," 'Kamal Hossain': {\n"," 'name': 'Kamal Hossain',\n"," 'position': {\n"," 'title': 'Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': 'KHN',\n"," 'Email': 'kamal.hossain@example.com',\n"," },\n"," 'details': {\n"," 'class rating': '5',\n"," 'Specialist': 'Algorithms',\n"," 'skills': ['Algorithm Design', 'Competitive Programming', 'C++']\n"," }\n"," }\n","}"],"metadata":{"id":"IINkymTL4SHs"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["1. Write a Python code snippet to find and print the email and specialist area of \"Mahi Hasan\" from the Faculty dictionary.\n","\n","2. Write a Python function to count and return the number of professors in the Faculty dictionary.\n","\n","3. Write a Python snippet to determine which faculty member(s) has the highest class rating in the Faculty dictionary.\n","\n","4. Write a Python function that takes a skill (e.g., 'Python') as input and returns a list of faculty names who have that skill in their skillset.\n","\n","5. Write a Python code snippet to add the following new faculty member to the Faculty dictionary."],"metadata":{"id":"ABkeYwxM5rHR"}},{"cell_type":"code","source":["# 1. Write a Python code snippet to find and print the email and specialist area of \"Mahi Hasan\" from the Faculty dictionary.\n","for i in faculty:\n"," if i == 'Mahi Hasan':\n"," print('Email: ',faculty[i]['position']['Email'])\n"," print('Specialist: ',faculty[i]['details']['Specialist'])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"k7-Tn2Af5vEt","executionInfo":{"status":"ok","timestamp":1733135809474,"user_tz":-360,"elapsed":430,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"442a0cfb-7d1a-4731-ae27-08894e749674"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Email: mahi.hasan@example.com\n","Specialist: Robotics\n"]}]},{"cell_type":"code","source":["# 2. Write a Python function to count and return the number of professors in the Faculty dictionary.\n","# def count_faculty(faculty):\n","# count = 0\n","# for i,j in faculty.items():\n","# for k,l in j['position'].items():\n","# if l == 'Professor':\n","# count += 1\n","# print(count)\n","# count_faculty(faculty)\n","\n","count = 0\n","for i in faculty:\n"," if faculty[i]['position']['title'] == 'Professor':\n"," count += 1\n","print(count)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"LCahDD2S6oPj","executionInfo":{"status":"ok","timestamp":1733136624207,"user_tz":-360,"elapsed":388,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"b2639755-19d4-4307-d4cb-de973b89e4b5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["3\n"]}]},{"cell_type":"code","source":["# 3. Write a Python snippet to determine which faculty member(s) has the highest class rating in the Faculty dictionary.\n","highest_rating = 0\n","highest_faculty = ''\n","for i in faculty:\n"," if float(faculty[i]['details']['class rating']) > highest_rating:\n"," highest_rating = float(faculty[i]['details']['class rating'])\n"," highest_faculty = i\n","print(highest_faculty,':',highest_rating)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"0ovUHodH_4uP","executionInfo":{"status":"ok","timestamp":1733136881083,"user_tz":-360,"elapsed":400,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"9fd0bf59-a1ae-45a5-f256-7b3f0a6fc358"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Sudipto Chaki : 5.0\n"]}]},{"cell_type":"code","source":["# 4. Write a Python function that takes a skill (e.g., 'Python') as input and returns a list of faculty names who have that skill in their skillset.\n","skl = input('Enter a skill: ')\n","for i in faculty:\n"," if skl in faculty[i]['details']['skills']:\n"," print(i)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"LC10gAYYAnRj","executionInfo":{"status":"ok","timestamp":1733137087388,"user_tz":-360,"elapsed":3612,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"f959c6e1-0f2d-49c9-b8c9-43e175294b52"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Enter a skill: Python\n","Sudipto Chaki\n","Anika Rahman\n","Sadia Islam\n","Rafiq Rahman\n"]}]},{"cell_type":"code","source":["# 5. Write a Python code snippet to add the following new faculty member to the Faculty dictionary.\n","faculty.update({'New Faculty': {\n"," 'name': 'New Faculty',\n"," 'position': {\n"," 'title': 'Assistant Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': ''},\n"," 'details': {'class rating': '','Specialist': 'AI','skills': ['Python', 'ML', 'GenAI']}\n"," }})"],"metadata":{"id":"gzy3-gPLBeVw"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["faculty['New Faculty']"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"-qkmnKV99P4K","executionInfo":{"status":"ok","timestamp":1733138068031,"user_tz":-360,"elapsed":487,"user":{"displayName":"Walid Al Hassan","userId":"16251668036492215176"}},"outputId":"5ecb795a-380d-4025-a4dc-fe8b1cab13c4"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'name': 'New Faculty',\n"," 'position': {'title': 'Assistant Professor',\n"," 'department': 'Department of Computer Science & Engineering',\n"," 'faculty code': ''},\n"," 'details': {'class rating': '',\n"," 'Specialist': 'AI',\n"," 'skills': ['Python', 'ML', 'GenAI']}}"]},"metadata":{},"execution_count":81}]}]}
python course old/Session/Functions And Dictionaries.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[]},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["Built-in Functions"],"metadata":{"id":"SfRk4S44Nhg5"}},{"cell_type":"code","source":["# Mathematical function\n","res = abs(-10)\n","print(res)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"v1BM-M2C66h4","executionInfo":{"status":"ok","timestamp":1733560949712,"user_tz":-360,"elapsed":699,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"5f69b7c4-1c28-452f-a4fe-db24df0d3aa8"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["10\n"]}]},{"cell_type":"code","source":["a = 10\n","b = 20"],"metadata":{"id":"jNpi6ZzKST3L"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Maximum and minimum\n","numbers = [3, 5, 7, 2, 8]\n","print(max(numbers))\n","print(min(numbers))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"oOcTodga7xd0","executionInfo":{"status":"ok","timestamp":1733545643606,"user_tz":-360,"elapsed":434,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"f7fc2954-bb76-467a-8559-05523e72729f"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["8\n","2\n"]}]},{"cell_type":"code","source":["# Rounding\n","print(round(3.44))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"4o84aVjc7ykG","executionInfo":{"status":"ok","timestamp":1733561224967,"user_tz":-360,"elapsed":480,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0d589f59-9c73-4674-c835-28fdb4cc1422"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["3\n"]}]},{"cell_type":"code","source":["# String function\n","name = \"Python\"\n","print(name.upper())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"aT0o6S3U6_Q_","executionInfo":{"status":"ok","timestamp":1733561262584,"user_tz":-360,"elapsed":415,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"00b7e1d0-445c-4030-a88a-1626f861c793"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["PYTHON\n"]}]},{"cell_type":"code","source":["# String length\n","text = \"Python Programming\"\n","print(len(text))\n","\n","# Convert to uppercase and lowercase\n","print(text.upper())\n","print(text.lower())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"r5r41ZAO8cO3","executionInfo":{"status":"ok","timestamp":1733545810794,"user_tz":-360,"elapsed":421,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"bf970ff0-345f-43c4-def6-eb289e7e2611"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["18\n","PYTHON PROGRAMMING\n","python programming\n"]}]},{"cell_type":"code","source":["# Type conversion\n","num_str = \"123\"\n","print(int(num_str) + 10)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"LLn-Zz4U7F2b","executionInfo":{"status":"ok","timestamp":1733561421550,"user_tz":-360,"elapsed":420,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"bebb6ac5-d0d0-4a8c-879c-7adbd524ce25"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["133\n"]}]},{"cell_type":"code","source":["# Convert to integer\n","float_number = 10.75\n","print(int(float_number))\n","\n","# Convert to float\n","integer_number = 25\n","print(float(integer_number))\n","\n","# Convert to string\n","num = 123\n","print(str(num))\n","\n","# Convert to boolean\n","print(bool(0))\n","print(bool(1))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"MCReG5yz8NpU","executionInfo":{"status":"ok","timestamp":1733561490054,"user_tz":-360,"elapsed":416,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"bd14d9eb-1823-49b3-c09e-04e0fbcd33a0"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["10\n","25.0\n","123\n","False\n","True\n"]}]},{"cell_type":"code","source":["type(float_number)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"qndLuKW_Y6Rl","executionInfo":{"status":"ok","timestamp":1733561552494,"user_tz":-360,"elapsed":415,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ec4c68f9-11a1-4261-e522-b6d5588dc6d9"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["float"]},"metadata":{},"execution_count":144}]},{"cell_type":"code","source":["float_number"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"U2twEoSqajqr","executionInfo":{"status":"ok","timestamp":1733546363553,"user_tz":-360,"elapsed":432,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1b2197c8-0bc0-47a4-f966-62fe7dcaaed1"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["10.75"]},"metadata":{},"execution_count":25}]},{"cell_type":"code","source":["# Input/Output\n","user_input = input(\"Enter your name: \")\n","print(f\"Hello, {user_input}!\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"NuMtDDVp7LyT","executionInfo":{"status":"ok","timestamp":1733546023443,"user_tz":-360,"elapsed":6898,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8ce24105-b71b-4f87-be4b-cd2704e89f18"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Enter your name: Hi\n","Hello, Hi!\n"]}]},{"cell_type":"code","source":["# Iterables\n","for i in range(1, 5):\n"," print(i)"],"metadata":{"id":"L-Qw7Fjy07_G","executionInfo":{"status":"ok","timestamp":1733561596968,"user_tz":-360,"elapsed":406,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"colab":{"base_uri":"https://localhost:8080/"},"outputId":"57b83cd2-f752-4537-e054-c0f044d09238"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["1\n","2\n","3\n","4\n"]}]},{"cell_type":"code","source":["# List and tuple conversion\n","sample_tuple = (1, 2, 3)\n","print(list(sample_tuple))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"KVRH_jWz9ay1","executionInfo":{"status":"ok","timestamp":1733546059420,"user_tz":-360,"elapsed":416,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"c0ac9075-cf5c-4146-d117-1c3249c8dc2a"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["[1, 2, 3]\n"]}]},{"cell_type":"code","source":["# Enumerate\n","fruits = ['apple', 'banana', 'cherry']\n","for index, fruit in enumerate(fruits, start=1):\n"," print(index, fruit)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"lNtrx-Jz89FV","executionInfo":{"status":"ok","timestamp":1733561832653,"user_tz":-360,"elapsed":422,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"393a12ae-c9b4-40f8-9007-a9dcd97199cd"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["1 apple\n","2 banana\n","3 cherry\n"]}]},{"cell_type":"code","source":["# Open and write to a file\n","file = open(\"example.txt\", \"w\")\n","file.write(\"This is a test file.\")\n","file.close()"],"metadata":{"id":"fj_aUndD9mqL"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Read the file\n","file = open(\"example.txt\", \"r\")\n","content = file.read()\n","print(content)\n","file.close()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"d-82DEar9iBY","executionInfo":{"status":"ok","timestamp":1733562002883,"user_tz":-360,"elapsed":413,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"afacb1cf-3980-410a-aa44-19b7bff7da76"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["This is a test file.\n"]}]},{"cell_type":"code","source":["x = 10\n","# isinstance\n","print(isinstance(x, int))\n","print(isinstance(x, str))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"TkM_B8TV92GH","executionInfo":{"status":"ok","timestamp":1733562078160,"user_tz":-360,"elapsed":422,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ac9d1ff7-a142-47a2-dd8e-af837c6c73c5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["True\n","False\n"]}]},{"cell_type":"markdown","source":["#User-defined Functions.\n","Creating a Function"],"metadata":{"id":"18j0FwrawcYJ"}},{"cell_type":"code","execution_count":null,"metadata":{"id":"MKB30gYRsU6h"},"outputs":[],"source":["def func():\n"," print(\"Hi, I am a function\")"]},{"cell_type":"markdown","source":["Call a function"],"metadata":{"id":"QQfN3FAVuawN"}},{"cell_type":"code","source":["def func():\n"," print(\"Hi, I am a function\")\n","\n","func()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"kQ3J91Wyubh8","executionInfo":{"status":"ok","timestamp":1733562206388,"user_tz":-360,"elapsed":402,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"170b21b6-5420-46e7-c724-c688010e60c6"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Hi, I am a function\n"]}]},{"cell_type":"markdown","source":["Parameters or Arguments"],"metadata":{"id":"piMg9hssu-ZA"}},{"cell_type":"code","source":["def func(fname):\n"," print(fname,\"BOB\")\n","\n","func(\"Hi\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"148yB6Jeu49I","executionInfo":{"status":"ok","timestamp":1733562284485,"user_tz":-360,"elapsed":403,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"d66e23d6-d2c1-4b72-f23f-2379559d9699"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Hi BOB\n"]}]},{"cell_type":"markdown","source":["Number of Arguments"],"metadata":{"id":"mcq7LRs6wv0r"}},{"cell_type":"code","source":["def func(fname, lname):\n"," print(fname,\" \",lname)\n","\n","func(\"Hi\", \"BOB\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"A2BdNqLIvwak","executionInfo":{"status":"ok","timestamp":1733562479687,"user_tz":-360,"elapsed":432,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"230bee0b-f7fe-4088-b080-503f136390d5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Hi BOB\n"]}]},{"cell_type":"markdown","source":["Arbitrary Arguments, *args"],"metadata":{"id":"gxs-RgqIwzoD"}},{"cell_type":"code","source":["def func(*un):\n"," print(un)\n","\n","func(\"Emil\", \"Tobias\", \"Linus\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Yda2z8qKw0OT","executionInfo":{"status":"ok","timestamp":1733562617251,"user_tz":-360,"elapsed":426,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"07f7eb42-db2f-4cf9-c113-3f6cd0bf2278"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["('Emil', 'Tobias', 'Linus')\n"]}]},{"cell_type":"markdown","source":["Keyword Arguments"],"metadata":{"id":"rgsgauchxZ4f"}},{"cell_type":"code","source":["def func(lst, st, vr):\n"," print(lst,st,vr)\n","\n","lst = [1,2,3]\n","st = \"Hi\"\n","vr = 12\n","\n","func(lst,vr,st)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"_aodFTAjY4LD","executionInfo":{"status":"ok","timestamp":1733562863807,"user_tz":-360,"elapsed":420,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8a0fea22-e22e-41c2-b4ef-a033b7dda7c7"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["[1, 2, 3] 12 Hi\n"]}]},{"cell_type":"code","source":["def func(var1, var2, var3):\n"," print(var1,var2,var3)\n","\n","func(var2 = \"var2\", var3 = \"var3\", var1 = \"var1\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"dU6RvgmQxa1O","executionInfo":{"status":"ok","timestamp":1733547635210,"user_tz":-360,"elapsed":420,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"becfc1eb-9a73-4005-8dea-0e7ce422a48e"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["var1 var2 var3\n"]}]},{"cell_type":"markdown","source":["Arbitrary Keyword Arguments, **kwargs"],"metadata":{"id":"y3WsecLlzFmp"}},{"cell_type":"code","source":["def func(**unknown):\n"," print(unknown)\n","\n","func(fname = \"Tobias\", lname = \"Refsnes\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"E10GdZKkzGOB","executionInfo":{"status":"ok","timestamp":1733563108677,"user_tz":-360,"elapsed":426,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"cc31c21c-14cc-4e46-beda-9c2be554b6f1"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'fname': 'Tobias', 'lname': 'Refsnes'}\n"]}]},{"cell_type":"markdown","source":["Default Parameter Value"],"metadata":{"id":"bDNJvhKgzhcU"}},{"cell_type":"code","source":["def func(Division = \"Dhaka\"):\n"," print(\"I am from\",Division)\n","\n","func(\"Khulna\")\n","func(\"Chattogram\")\n","func()\n","func(\"Sylhet\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"K1O8kBlBzh8s","executionInfo":{"status":"ok","timestamp":1733563148693,"user_tz":-360,"elapsed":432,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e9ec71ed-30bf-4888-c738-d927f4518641"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["I am from Khulna\n","I am from Chattogram\n","I am from Dhaka\n","I am from Sylhet\n"]}]},{"cell_type":"markdown","source":["Passing a List as an Argument"],"metadata":{"id":"J25SVyNlWUfR"}},{"cell_type":"code","source":["def func(vec): # Parameter\n"," for x in vec:\n"," print(x)\n","\n","vehicles = [\"Car\", \"Bus\", \"Train\"]\n","func(vehicles) # Argument"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"zJft0bT9WREp","executionInfo":{"status":"ok","timestamp":1733563238765,"user_tz":-360,"elapsed":427,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"bd2873be-ef57-4cfa-817b-7f19489676d9"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Car\n","Bus\n","Train\n"]}]},{"cell_type":"markdown","source":["Return Values"],"metadata":{"id":"LKbds_xlW9_t"}},{"cell_type":"code","source":["def func(x):\n"," return 5 * x\n","res = func(3)\n","print(res)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"SCMykXY_W-1V","executionInfo":{"status":"ok","timestamp":1733563435066,"user_tz":-360,"elapsed":401,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"cce3a49b-0b6e-47f7-d8eb-96180e1d5d3a"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["15\n"]}]},{"cell_type":"markdown","source":["The pass Statement"],"metadata":{"id":"duILhboOXlGK"}},{"cell_type":"code","source":["def func():\n"," for i in range(10):\n"," pass\n","\n","func()"],"metadata":{"id":"lZlzZkxoXGme"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["Positional-Only Arguments"],"metadata":{"id":"jxhtUEaNYTHl"}},{"cell_type":"code","source":["def func(x,y,/):\n"," print(x,y)\n","\n","func(3,5)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"8xfnNaUiYTv9","executionInfo":{"status":"ok","timestamp":1733563695361,"user_tz":-360,"elapsed":431,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"20ae036e-ce66-49ca-b8a2-8fd61401dcfd"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["3 5\n"]}]},{"cell_type":"code","source":["def func(x, /, y):\n"," print(x,y)\n","\n","func(3, y = 10)"],"metadata":{"id":"2FJmtgpScEzV","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1733563725968,"user_tz":-360,"elapsed":450,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"33407076-fa21-4470-9e65-3410a8fd8a84"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["3 10\n"]}]},{"cell_type":"markdown","source":["Keyword-Only Arguments"],"metadata":{"id":"K0Hh8zMTZslh"}},{"cell_type":"code","source":["def func(x, *, y):\n"," print(x, y)\n","\n","func(5,y = 3)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"R-UGSDfPcHVl","executionInfo":{"status":"ok","timestamp":1733563811043,"user_tz":-360,"elapsed":2,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"2fb4b079-bcf3-4132-ef3e-84849f7348fd"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["5 3\n"]}]},{"cell_type":"code","source":["def func(*, a, b, c, d):\n"," print(a + b + c + d)\n","\n","func(a=5, b=6, c = 7, d = 8)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"-yEbOc_bZ8US","executionInfo":{"status":"ok","timestamp":1733563833603,"user_tz":-360,"elapsed":412,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e2393cae-e6cb-4452-c243-c59736cdbbf1"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["26\n"]}]},{"cell_type":"markdown","source":["Recursion"],"metadata":{"id":"1tTrUVCXdcQP"}},{"cell_type":"code","source":["def func(n):\n"," if n == 1: # Base Case\n"," return 1\n"," else: # Recursive Case\n"," return n + func(n-1)\n","\n","func(5)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Tb0YEmggc8SF","executionInfo":{"status":"ok","timestamp":1733550993580,"user_tz":-360,"elapsed":433,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"95e870ac-12d3-4b7b-f169-92c19f00731c"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["15"]},"metadata":{},"execution_count":72}]},{"cell_type":"code","source":["# func(5) = 5 + func(4)\n","# 4 + func(3)\n","# 3 + func(2)\n","# 2 + func(1)\n","# 1"],"metadata":{"id":"RQfgudVasWMN"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["Lambda"],"metadata":{"id":"GAaDs0Rhg5d2"}},{"cell_type":"code","source":["def x(a):\n"," return a + 10\n","\n","print(x(5))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"fFXyCPj4vrR9","executionInfo":{"status":"ok","timestamp":1733551919092,"user_tz":-360,"elapsed":418,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"27eb6f39-53e6-4788-f343-35d404fdf9d2"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["15\n"]}]},{"cell_type":"code","source":["x = lambda a : a + 10\n","print(x(5))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"dTQ6Oqnsg6FW","executionInfo":{"status":"ok","timestamp":1733551920239,"user_tz":-360,"elapsed":663,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0b6a8c69-c84a-4e2b-9cee-6ada54aa7359"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["15\n"]}]},{"cell_type":"code","source":["x = lambda a, b : a * b\n","print(x(5, 6))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"6g0ZzZ7ehJWI","executionInfo":{"status":"ok","timestamp":1733551886279,"user_tz":-360,"elapsed":409,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"46dbe7c4-e920-4bb1-96b3-8aea9ae77156"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["30\n"]}]},{"cell_type":"markdown","source":["Multiple return values"],"metadata":{"id":"9H-N62MOeYIA"}},{"cell_type":"code","source":["def get_coordinates():\n"," x = 10\n"," y = 20\n"," return x, y\n","\n","coordinates = get_coordinates()\n","print(coordinates)\n","\n","x, y = get_coordinates()\n","print(x, y)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"TrOqBViuTgtM","executionInfo":{"status":"ok","timestamp":1733552048601,"user_tz":-360,"elapsed":427,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8d6995a4-450f-416d-e6e5-11793fadda0d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["(10, 20)\n","10 20\n"]}]},{"cell_type":"markdown","source":["Scope of Variables"],"metadata":{"id":"DHuNZv0jU10N"}},{"cell_type":"code","source":["def func():\n"," x = 10\n"," print(\"Inside function:\", x)\n","\n","func()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"jc0Uarn0UTcJ","executionInfo":{"status":"ok","timestamp":1733564679191,"user_tz":-360,"elapsed":455,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0ee821f3-7a1e-47e3-e848-84ca56b84ccf"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Inside function: 10\n"]}]},{"cell_type":"code","source":["x = 20\n","def func():\n"," x = 10\n"," print(\"Inside function:\", x)\n"," # x = 10\n","func()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"zN0Zq9YYUXvB","executionInfo":{"status":"ok","timestamp":1733564795707,"user_tz":-360,"elapsed":427,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1a02c662-f070-4e82-fd52-f508e68f503a"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Inside function: 10\n"]}]},{"cell_type":"code","source":["x = 20 # Global variable\n","\n","def my_function():\n"," print(\"Inside function:\", x)\n","\n","my_function()\n","print(\"Outside function:\", x)\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"zDkdqXHQVd4f","executionInfo":{"status":"ok","timestamp":1733564835357,"user_tz":-360,"elapsed":408,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"beeac9ed-f790-4ba6-8c22-71b99dd85d19"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Inside function: 20\n","Outside function: 20\n"]}]},{"cell_type":"code","source":["x = 5 # Global variable\n","\n","def modify_global():\n"," global x\n"," x = 10 # Modifies the global variable\n"," print(\"Inside function:\", x)\n","\n","modify_global()\n","print(\"Outside function:\", x)\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"-FHMTtRBYIxa","executionInfo":{"status":"ok","timestamp":1733564902821,"user_tz":-360,"elapsed":703,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"60e1a04e-b67a-454b-9c8d-f81499d42fd7"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Inside function: 10\n","Outside function: 10\n"]}]},{"cell_type":"code","source":["x = 20\n","def outer_function():\n"," x = 30\n","\n"," def inner_function():\n"," print(\"Inside inner_function:\", x)\n","\n"," inner_function()\n","\n","outer_function()\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"WzIaN_wvYtju","executionInfo":{"status":"ok","timestamp":1733552345030,"user_tz":-360,"elapsed":422,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"303816ed-395d-474a-a35a-58de4260ee49"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Inside inner_function: 30\n","20\n"]}]},{"cell_type":"code","source":["x = \"global\"\n","\n","def outer_function():\n"," x = \"enclosing\"\n","\n"," def inner_function():\n"," x = \"local\"\n"," print(x)\n","\n"," inner_function()\n"," print(x)\n","\n","outer_function()\n","print(x)\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"UG7_r6UXY9H3","executionInfo":{"status":"ok","timestamp":1733565189881,"user_tz":-360,"elapsed":465,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e172bb56-6ced-4ad6-e437-671cbbb6a490"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["local\n","enclosing\n","global\n"]}]},{"cell_type":"code","source":["def outer_function():\n"," x = \"enclosing\"\n","\n"," def inner_function():\n"," nonlocal x\n"," x = \"modified enclosing\"\n"," print(x)\n","\n"," inner_function()\n"," print(x)\n","\n","outer_function()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"qzwof_8QZP6R","executionInfo":{"status":"ok","timestamp":1733565264615,"user_tz":-360,"elapsed":442,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"be7c321f-cf01-4471-db4b-4d53e4a26848"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["modified enclosing\n","modified enclosing\n"]}]},{"cell_type":"code","source":["counter = 0\n","def increment():\n"," global counter\n"," counter += 1\n"," print(counter)\n","\n","increment()\n","print(counter)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"O5x23V7WZvCs","executionInfo":{"status":"ok","timestamp":1733565293110,"user_tz":-360,"elapsed":435,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"096e43a2-00dc-4aa7-a79a-2b11f50d90a4"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["1\n","1\n"]}]},{"cell_type":"markdown","source":["Data structures: Dictionaries"],"metadata":{"id":"winJJbiUiIIO"}},{"cell_type":"code","source":["Dictionaries = {\"key1\":\"value1\"}"],"metadata":{"id":"yih6CE4RiIrl"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["Create Dictionaries"],"metadata":{"id":"56RkusxohJDa"}},{"cell_type":"code","source":["dic = {\n"," \"brand\": \"Ford\",\n"," \"model\": \"Mustang\",\n"," \"year\": 1964\n","}"],"metadata":{"id":"VLkxduR8hSQ_"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Ihvoijply3U5","executionInfo":{"status":"ok","timestamp":1733567298169,"user_tz":-360,"elapsed":435,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"9f69778d-96a9-40b7-c1b9-b9feb4b0bc6d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'brand': 'Ford', 'model': 'Mustang', 'year': 1964}\n"]}]},{"cell_type":"code","source":["print(dic)\n","print(len(dic))\n","print(type(dic))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"dCW1nOWDiNRW","executionInfo":{"status":"ok","timestamp":1733567419719,"user_tz":-360,"elapsed":1,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"693b217a-6e52-4b7c-f054-9c34119daa31"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'brand': 'Ford', 'model': 'Mustang', 'year': 1964}\n","3\n","<class 'dict'>\n"]}]},{"cell_type":"code","source":["dic = dict(brand = \"Ford\", model = \"Mustang\", year = 1964)\n","print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"cOUjZZdviN0G","executionInfo":{"status":"ok","timestamp":1733567476812,"user_tz":-360,"elapsed":427,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"f2c4422e-453a-4f72-9bf0-f699c6339afd"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'brand': 'Ford', 'model': 'Mustang', 'year': 1964}\n"]}]},{"cell_type":"markdown","source":["Accessing Items"],"metadata":{"id":"k95vij2nkKLS"}},{"cell_type":"code","source":["x = dic[\"year\"]\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Pq5DQvKGkJO7","executionInfo":{"status":"ok","timestamp":1733568055945,"user_tz":-360,"elapsed":1711,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e5e8474c-75b8-4e59-dd4a-6c81c92901a6"},"execution_count":210,"outputs":[{"output_type":"stream","name":"stdout","text":["1964\n"]}]},{"cell_type":"code","source":["x = dic.get(\"model\")\n","x"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":35},"id":"7NrgctylkR0D","executionInfo":{"status":"ok","timestamp":1733568073844,"user_tz":-360,"elapsed":1578,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"a1c24afa-80c7-4535-fda4-796de9986b9f"},"execution_count":211,"outputs":[{"output_type":"execute_result","data":{"text/plain":["'Mustang'"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"}},"metadata":{},"execution_count":211}]},{"cell_type":"markdown","source":["keys()"],"metadata":{"id":"aKSZoGH-iYTm"}},{"cell_type":"code","source":["x = dic.keys()\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"t9pG91qkkYDk","executionInfo":{"status":"ok","timestamp":1733568120561,"user_tz":-360,"elapsed":1726,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"156acb1f-8197-4799-c6db-8cf4dc05a5b4"},"execution_count":213,"outputs":[{"output_type":"stream","name":"stdout","text":["dict_keys(['brand', 'model', 'year'])\n"]}]},{"cell_type":"code","source":["x = dic.values()\n","x"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"XIY6AocbifhJ","executionInfo":{"status":"ok","timestamp":1733568134991,"user_tz":-360,"elapsed":425,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ce5bbca4-2808-4d80-bfa2-91eb5321e8d4"},"execution_count":214,"outputs":[{"output_type":"execute_result","data":{"text/plain":["dict_values(['Ford', 'Mustang', 1964])"]},"metadata":{},"execution_count":214}]},{"cell_type":"code","source":["x = dic.items()\n","x"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"r3UjUOwMir1v","executionInfo":{"status":"ok","timestamp":1733568164225,"user_tz":-360,"elapsed":483,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e9946a9b-d7e8-4e58-8e06-8772b0ca87ee"},"execution_count":215,"outputs":[{"output_type":"execute_result","data":{"text/plain":["dict_items([('brand', 'Ford'), ('model', 'Mustang'), ('year', 1964)])"]},"metadata":{},"execution_count":215}]},{"cell_type":"markdown","source":["Add Items"],"metadata":{"id":"QNjHr3FxhhrI"}},{"cell_type":"code","source":["dic[\"color\"] = \"white\"\n","dic"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"P-jX07npkdWt","executionInfo":{"status":"ok","timestamp":1733568245153,"user_tz":-360,"elapsed":397,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"41980110-ea06-4eec-f3ab-864c32906360"},"execution_count":216,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'brand': 'Ford', 'model': 'Mustang', 'year': 1964, 'color': 'white'}"]},"metadata":{},"execution_count":216}]},{"cell_type":"code","source":["d= {\"Power\":\"315 HP\"}\n","dic.update(d)\n","dic"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"df2cHHGInqBE","executionInfo":{"status":"ok","timestamp":1733568358585,"user_tz":-360,"elapsed":435,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6c8a7c34-fad7-4075-ca3e-26fb94818e55"},"execution_count":217,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'brand': 'Ford',\n"," 'model': 'Mustang',\n"," 'year': 1964,\n"," 'color': 'white',\n"," 'Power': '315 HP'}"]},"metadata":{},"execution_count":217}]},{"cell_type":"markdown","source":["Modify"],"metadata":{"id":"MQQ-FXNhi1sm"}},{"cell_type":"code","source":["x = dic.values()\n","\n","print(x) #before the change\n","\n","dic[\"year\"] = 2020\n","\n","print(x) #after the change"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"vTI0Js9Qk4i3","executionInfo":{"status":"ok","timestamp":1733568398467,"user_tz":-360,"elapsed":423,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"fedbb0b2-c422-44dd-96a6-0e737cc1c601"},"execution_count":218,"outputs":[{"output_type":"stream","name":"stdout","text":["dict_values(['Ford', 'Mustang', 1964, 'white', '315 HP'])\n","dict_values(['Ford', 'Mustang', 2020, 'white', '315 HP'])\n"]}]},{"cell_type":"code","source":["dic.update({\"Power\":\"400 HP\"})\n","dic"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"uvPL_HxuoeYj","executionInfo":{"status":"ok","timestamp":1733553487163,"user_tz":-360,"elapsed":430,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"26100336-0df1-475e-fe1d-43aa96310b02"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'brand': 'Ford',\n"," 'model': 'Mustang',\n"," 'year': 2020,\n"," 'color': 'white',\n"," 'Power': '400 HP'}"]},"metadata":{},"execution_count":111}]},{"cell_type":"markdown","source":["IF condition on dictionary"],"metadata":{"id":"0H-RH2KAk01h"}},{"cell_type":"code","source":["if \"model\" in dic:\n"," print(dic[\"model\"])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"RIKmYHRslRkZ","executionInfo":{"status":"ok","timestamp":1733553495224,"user_tz":-360,"elapsed":409,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"25a74495-4db4-4dce-c157-f15ad5d609cf"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Mustang\n"]}]},{"cell_type":"markdown","source":["Remove"],"metadata":{"id":"aHCU62mgl42t"}},{"cell_type":"code","source":["dic.pop(\"model\")\n","print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Tt7MiZJ4lbX6","executionInfo":{"status":"ok","timestamp":1733553591204,"user_tz":-360,"elapsed":420,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"fb951324-8c71-4bf4-da40-c260cbcae871"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'brand': 'Ford', 'year': 2020, 'color': 'white', 'Power': '400 HP'}\n"]}]},{"cell_type":"code","source":["dic.popitem()\n","print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"5rLw_HJGluTk","executionInfo":{"status":"ok","timestamp":1733553917506,"user_tz":-360,"elapsed":441,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b0a40a0f-034b-4816-a8af-64d3b646bbb2"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'brand': 'Ford', 'year': 2020, 'color': 'white'}\n"]}]},{"cell_type":"code","source":["del dic[\"year\"]\n","print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"HXjuyg0Kl2c1","executionInfo":{"status":"ok","timestamp":1733553948488,"user_tz":-360,"elapsed":466,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ebbd008f-6835-4a42-8426-54817e62e76d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'brand': 'Ford', 'color': 'white'}\n"]}]},{"cell_type":"code","source":["dic.clear()\n","print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"NaGVNcQLl_Ct","executionInfo":{"status":"ok","timestamp":1733553959507,"user_tz":-360,"elapsed":413,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8f88b9c5-6606-44c4-86c9-bd0ed5d3cfb4"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{}\n"]}]},{"cell_type":"markdown","source":["for loop in dictionary"],"metadata":{"id":"2g18Gu0Ck-t9"}},{"cell_type":"code","source":["dic = {\n"," \"brand\": \"Ford\",\n"," \"model\": \"Mustang\",\n"," \"year\": 1964\n","}"],"metadata":{"id":"sjuLUjk4lMMW","executionInfo":{"status":"ok","timestamp":1733568777349,"user_tz":-360,"elapsed":452,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":219,"outputs":[]},{"cell_type":"markdown","source":["for loop with keys"],"metadata":{"id":"SfuHtH52lWkM"}},{"cell_type":"code","source":["for x in dic:\n"," print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"viXaYxIwlOED","executionInfo":{"status":"ok","timestamp":1733554042473,"user_tz":-360,"elapsed":440,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ca313f60-0338-40df-c3be-c125fca936de"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["brand\n","model\n","year\n"]}]},{"cell_type":"code","source":["for x in dic.keys():\n"," print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"8tybG7eClb1A","executionInfo":{"status":"ok","timestamp":1733554053175,"user_tz":-360,"elapsed":419,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"4d3545c0-b679-4522-b26d-70364c931348"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["brand\n","model\n","year\n"]}]},{"cell_type":"markdown","source":["for loop with values"],"metadata":{"id":"_CT7BsxjlsjZ"}},{"cell_type":"code","source":["for x in dic:\n"," print(dic[x])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"hWpbaVpQmFTG","executionInfo":{"status":"ok","timestamp":1733554146465,"user_tz":-360,"elapsed":425,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"f7ab0e1a-2329-41ce-fb4c-747eee4605b7"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Ford\n","Mustang\n","1964\n"]}]},{"cell_type":"code","source":["for x in dic.values():\n"," print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"PFYLUr8GljJA","executionInfo":{"status":"ok","timestamp":1733554178031,"user_tz":-360,"elapsed":425,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b62871c8-9390-4f84-a783-0d5bfb17de3c"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Ford\n","Mustang\n","1964\n"]}]},{"cell_type":"markdown","source":["for loop with items"],"metadata":{"id":"e8ttUHNPl2Ep"}},{"cell_type":"code","source":["for x, y in dic.items():\n"," print(x,':', y)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"7NEARCAimQmX","executionInfo":{"status":"ok","timestamp":1733554209261,"user_tz":-360,"elapsed":406,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ab8c1e97-025f-4619-bd8b-92731b8fdca3"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["brand : Ford\n","model : Mustang\n","year : 1964\n"]}]},{"cell_type":"markdown","source":["Advanced Operations of dictionaries"],"metadata":{"id":"fq8j8EkwnbuQ"}},{"cell_type":"code","source":["child1 = {\n"," \"name\" : \"Rohan\",\n"," \"year\" : 2004\n","}\n","child2 = {\n"," \"name\" : \"Rakib\",\n"," \"year\" : 2007\n","}\n","child3 = {\n"," \"name\" : \"Rana\",\n"," \"year\" : 2011\n","}\n","\n","myfamily = {\n"," \"child1\" : child1,\n"," \"child2\" : child2,\n"," \"child3\" : child3\n","}"],"metadata":{"id":"GjgwAYbZmtFC","executionInfo":{"status":"ok","timestamp":1733568999841,"user_tz":-360,"elapsed":1,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":220,"outputs":[]},{"cell_type":"code","source":["myfamily"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"28qYsQ-erbHA","executionInfo":{"status":"ok","timestamp":1733554273782,"user_tz":-360,"elapsed":526,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"330b9c15-a7be-45bc-a02e-970daa992ff2"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["{'child1': {'name': 'Rohan', 'year': 2004},\n"," 'child2': {'name': 'Rakib', 'year': 2007},\n"," 'child3': {'name': 'Rana', 'year': 2011}}"]},"metadata":{},"execution_count":128}]},{"cell_type":"code","source":["dic = {}\n","for x in range(1, 6):\n"," dic[x] = x ** 2\n"," # dic.update({x: x ** 2})\n","print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"k0_Fp2RrnHlY","executionInfo":{"status":"ok","timestamp":1733554552949,"user_tz":-360,"elapsed":681,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"e15c1f6b-25d8-42a9-fa78-409dfe895b25"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}\n"]}]},{"cell_type":"code","source":["squares = {x: x ** 2 for x in range(1, 6)}\n","print(squares)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"MpLOphmoTesg","executionInfo":{"status":"ok","timestamp":1733554627500,"user_tz":-360,"elapsed":417,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"14fab957-1055-421e-8e2c-b8d18eca45bc"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}\n"]}]},{"cell_type":"code","source":["dic = {}\n","for x in range(1, 11):\n"," if x % 2 == 0:\n"," dic[x] = x ** 2\n"," # dic.update({x: x ** 2})\n","print(dic)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"w6EtOS4wookU","executionInfo":{"status":"ok","timestamp":1733554643882,"user_tz":-360,"elapsed":417,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"2a19cdd0-2f67-4b01-cbe6-28c5b1d193d5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{2: 4, 4: 16, 6: 36, 8: 64, 10: 100}\n"]}]},{"cell_type":"code","source":["squares = {x: x ** 2 for x in range(1, 11) if x % 2 == 0}\n","print(squares)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"dPjzWfdsau9g","executionInfo":{"status":"ok","timestamp":1733554692513,"user_tz":-360,"elapsed":411,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"9460ce1d-0cbc-4449-82b8-53e11183df28"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{2: 4, 4: 16, 6: 36, 8: 64, 10: 100}\n"]}]},{"cell_type":"code","source":[],"metadata":{"id":"9OtTs6tC7Zcf"},"execution_count":null,"outputs":[]}]}
python course old/Session/String Manipulation and File Handling.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"collapsed_sections":["EH1YPTtUtVHC","9tEiHo4FCeF4","Kkx-fAUgLmpe","L0rqeUbuZ5pL","Dk5jkOO6jjJq","YpMF_l7Jx6wM","AVjTUSBN2s-N"],"authorship_tag":"ABX9TyPXfqNDuvBuFd89kkBR20WJ"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["# **`String Manipulation`**"],"metadata":{"id":"34U5ywTkRZQM"}},{"cell_type":"markdown","source":["# String methods and formatting\n","* Reference: https://www.w3schools.com/python/python_strings.asp\n","* Practice problems: https://www.w3resource.com/python-exercises/string/\n","\n","\n","\n","\n","\n","\n","\n"],"metadata":{"id":"EH1YPTtUtVHC"}},{"cell_type":"code","source":["a = \"\"\"Lorem ipsum dolor sit amet,\n","consectetur adipiscing elit,\n","sed do eiusmod tempor incididunt\n","ut labore et dolore magna aliqua.\"\"\"\n","print(a)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Ir7GyfGP9eXz","executionInfo":{"status":"ok","timestamp":1746552709203,"user_tz":-360,"elapsed":15,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"f489f10c-7343-4586-b4ff-2cd62cd6891b"},"execution_count":1,"outputs":[{"output_type":"stream","name":"stdout","text":["Lorem ipsum dolor sit amet,\n","consectetur adipiscing elit,\n","sed do eiusmod tempor incididunt\n","ut labore et dolore magna aliqua.\n"]}]},{"cell_type":"code","source":["b = \"Hello, World!\"\n","print(b[1:5])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"hAHb3Vrh9xV9","executionInfo":{"status":"ok","timestamp":1746552709307,"user_tz":-360,"elapsed":52,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"85d247ad-ab27-4d7d-f7c8-5cf20e636c70"},"execution_count":2,"outputs":[{"output_type":"stream","name":"stdout","text":["ello\n"]}]},{"cell_type":"code","source":["b = \"Hello, World!\"\n","print(b[-5:-2])"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"kX4fnDhB92SW","executionInfo":{"status":"ok","timestamp":1746552709309,"user_tz":-360,"elapsed":34,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"d8bbe758-e97f-49bd-a0ab-f8d913fc2172"},"execution_count":3,"outputs":[{"output_type":"stream","name":"stdout","text":["orl\n"]}]},{"cell_type":"code","source":["a = \"Hello, World!\"\n","print(a.upper())\n","print(a.lower())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"v1hPa9fG-PAh","executionInfo":{"status":"ok","timestamp":1746552709310,"user_tz":-360,"elapsed":7,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"db356f64-ea31-40a9-f0b2-b969e1747af1"},"execution_count":4,"outputs":[{"output_type":"stream","name":"stdout","text":["HELLO, WORLD!\n","hello, world!\n"]}]},{"cell_type":"code","source":["a = \" Hello, World! \\n\"\n","print(a.strip())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"1Ovm72BV-TCZ","executionInfo":{"status":"ok","timestamp":1746552709318,"user_tz":-360,"elapsed":7,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"531c0161-38c0-4358-f5dc-12947d72e17f"},"execution_count":5,"outputs":[{"output_type":"stream","name":"stdout","text":["Hello, World!\n"]}]},{"cell_type":"code","source":["a = \"Hello, World!\"\n","print(a.replace(\"Hello\", \"HI\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"IXaINAuW-YDa","executionInfo":{"status":"ok","timestamp":1746552709353,"user_tz":-360,"elapsed":28,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"80d09c50-26b6-4f01-9ff7-1a64f650b7bb"},"execution_count":6,"outputs":[{"output_type":"stream","name":"stdout","text":["HI, World!\n"]}]},{"cell_type":"code","source":["a = \"Hello, World!\"\n","print(a.split(\",\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"rW1TnpCq-gZa","executionInfo":{"status":"ok","timestamp":1746552709389,"user_tz":-360,"elapsed":16,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"054cfce0-df16-481b-e3fd-a7cbcd2702e1"},"execution_count":7,"outputs":[{"output_type":"stream","name":"stdout","text":["['Hello', ' World!']\n"]}]},{"cell_type":"code","source":["a = \"Hello\"\n","b = \"World\"\n","c = a + \" \" + b\n","print(c)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"YYEnRueU_31r","executionInfo":{"status":"ok","timestamp":1746552709426,"user_tz":-360,"elapsed":33,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b2ec0bfe-2f80-4048-b86c-eb834b0dd544"},"execution_count":8,"outputs":[{"output_type":"stream","name":"stdout","text":["Hello World\n"]}]},{"cell_type":"code","source":["age = 36\n","# txt = f\"My name is John, I am {age}\"\n","print(f\"My name is John, I am {age}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"acL4JQ0pAZwY","executionInfo":{"status":"ok","timestamp":1746552709437,"user_tz":-360,"elapsed":5,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"2c9ee530-60e4-44b4-de99-61a41cae7d11"},"execution_count":9,"outputs":[{"output_type":"stream","name":"stdout","text":["My name is John, I am 36\n"]}]},{"cell_type":"code","source":["price = 59.5498459674\n","txt = f\"The price is {price:.2f} dollars\"\n","print(txt)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"HKNFpzF7Aqj6","executionInfo":{"status":"ok","timestamp":1746552709443,"user_tz":-360,"elapsed":5,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"f2be11bb-b983-4315-c137-ce1329456fc7"},"execution_count":10,"outputs":[{"output_type":"stream","name":"stdout","text":["The price is 59.55 dollars\n"]}]},{"cell_type":"code","source":["txt = \"Hi, I am a \\\"student\\\".\"\n","print(txt)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"-atXFBIwA0Mb","executionInfo":{"status":"ok","timestamp":1746552709471,"user_tz":-360,"elapsed":27,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6ad0a821-5ca2-4582-a5b6-6e2869586615"},"execution_count":11,"outputs":[{"output_type":"stream","name":"stdout","text":["Hi, I am a \"student\".\n"]}]},{"cell_type":"code","source":["txt = \"Hello\\nWorld!\"\n","print(txt)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Qi0BWARgBVYP","executionInfo":{"status":"ok","timestamp":1746552709489,"user_tz":-360,"elapsed":8,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"23615de5-4b24-4005-9020-ea72cf686f12"},"execution_count":12,"outputs":[{"output_type":"stream","name":"stdout","text":["Hello\n","World!\n"]}]},{"cell_type":"code","source":["text = \"hello world\"\n","print(text.capitalize())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"H3NWthPyB7Uc","executionInfo":{"status":"ok","timestamp":1746552709514,"user_tz":-360,"elapsed":23,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0036b297-b10a-43a2-aa2b-7f738354553e"},"execution_count":13,"outputs":[{"output_type":"stream","name":"stdout","text":["Hello world\n"]}]},{"cell_type":"code","source":["text = \"banana\"\n","print(text.count(\"a\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"L34c_HkkB9gs","executionInfo":{"status":"ok","timestamp":1746552709523,"user_tz":-360,"elapsed":8,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"0ae37e6b-5989-4fbe-dd75-2c609a38f415"},"execution_count":14,"outputs":[{"output_type":"stream","name":"stdout","text":["3\n"]}]},{"cell_type":"code","source":["text = \"hello world\"\n","print(text.find(\"world\"))\n","print(text.find(\"python\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"l-sr2fbZCFs9","executionInfo":{"status":"ok","timestamp":1746552709552,"user_tz":-360,"elapsed":28,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"fb69d519-a7d8-4c75-ff5e-7f50b88b111b"},"execution_count":15,"outputs":[{"output_type":"stream","name":"stdout","text":["6\n","-1\n"]}]},{"cell_type":"code","source":["words = [\"Python\", \"is\", \"awesome\"]\n","print(\" \".join(words))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"MUUZo48FCIWF","executionInfo":{"status":"ok","timestamp":1746552709567,"user_tz":-360,"elapsed":8,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6b8f15b5-c83d-4a12-d9d5-77ebfb933b65"},"execution_count":16,"outputs":[{"output_type":"stream","name":"stdout","text":["Python is awesome\n"]}]},{"cell_type":"code","source":["text = \"Python\"\n","print(f\"{text:<10}\")\n","print(f\"{text:>10}\")\n","print(f\"{text:^10}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"TwybhbbOLxu1","executionInfo":{"status":"ok","timestamp":1746552709572,"user_tz":-360,"elapsed":4,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"be90a8f2-bd53-45fe-923f-a4b65bd7e1b0"},"execution_count":17,"outputs":[{"output_type":"stream","name":"stdout","text":["Python \n"," Python\n"," Python \n"]}]},{"cell_type":"code","source":["text = \"452\"\n","print(text.isalpha())\n","print(text.isdigit())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"1ggoy0QtLzFN","executionInfo":{"status":"ok","timestamp":1746552709583,"user_tz":-360,"elapsed":5,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"bf7d25bb-dbac-4c74-baad-3fedeaad6d49"},"execution_count":18,"outputs":[{"output_type":"stream","name":"stdout","text":["False\n","True\n"]}]},{"cell_type":"code","source":["text = \"Python is fun and Python is powerful.\"\n","word_count = text.lower().count(\"python\")\n","print(word_count)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"si0R0d4PL06m","executionInfo":{"status":"ok","timestamp":1746552709610,"user_tz":-360,"elapsed":26,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"33ad9f83-7bdf-4c68-94c5-9298f8c0394f"},"execution_count":19,"outputs":[{"output_type":"stream","name":"stdout","text":["2\n"]}]},{"cell_type":"markdown","source":["**Examples**"],"metadata":{"id":"6dIO02aW_0Ui"}},{"cell_type":"code","source":["# Write a function extract_substring, that extracts a substring from the given string from index start to index end. Return the substring.\n","def extract_substring(s, start, end):\n"," return s[start:end]\n","\n","print(extract_substring(s = \"Hello, World!\", start = 1, end = 5))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"mIGK7bFd56Xp","executionInfo":{"status":"ok","timestamp":1746552709620,"user_tz":-360,"elapsed":8,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6fc4aa29-4bdc-46dd-d7d4-e80b099da1e5"},"execution_count":20,"outputs":[{"output_type":"stream","name":"stdout","text":["ello\n"]}]},{"cell_type":"code","source":["'''Write a function convert_case, that returns two values:\n","1. The string s converted to uppercase\n","2. The string s converted to lowercase'''\n","\n","def convert_case(s: str):\n"," return s.upper(), s.lower()\n","\n","print(convert_case(\"Hello, World!\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"KUiY5lR18era","executionInfo":{"status":"ok","timestamp":1746552709636,"user_tz":-360,"elapsed":15,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"cbb69b48-da85-45af-dc32-f03fccfd3309"},"execution_count":21,"outputs":[{"output_type":"stream","name":"stdout","text":["('HELLO, WORLD!', 'hello, world!')\n"]}]},{"cell_type":"code","source":["# Write a function replace_substring, that replaces all occurrences of the substring old in string with new. Return the modified string.\n","def replace_substring(s, old, new):\n"," return s.replace(old, new)\n","\n","print(replace_substring(\"Hello, World!\", \"Hello\", \"HI\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Tz7ehhkj9KWw","executionInfo":{"status":"ok","timestamp":1746552709644,"user_tz":-360,"elapsed":7,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"a1df455e-85c7-4e92-a250-0f820961303c"},"execution_count":22,"outputs":[{"output_type":"stream","name":"stdout","text":["HI, World!\n"]}]},{"cell_type":"code","source":["# Write a function count_substring, that counts the number of times the substring sub appears in the string. Return the count.\n","def count_substring(s, sub):\n"," return s.count(sub)\n","\n","print(count_substring(\"banana\", \"a\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"pBZUZHT--PiY","executionInfo":{"status":"ok","timestamp":1746552710240,"user_tz":-360,"elapsed":594,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"f8484ef7-8115-45ff-c012-ec86e4804113"},"execution_count":23,"outputs":[{"output_type":"stream","name":"stdout","text":["3\n"]}]},{"cell_type":"code","source":["# Write a function split_and_join, that splits the string by the given delimiter and joins the parts together using a space. Return the resulting string.\n","def split_and_join(s, delimiter):\n"," lst = s.split(delimiter)\n"," print(lst)\n"," return ' '.join(lst)\n","\n","print(split_and_join(\"Hello, World!\", \",\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"gVqGNbor-iF6","executionInfo":{"status":"ok","timestamp":1746552710249,"user_tz":-360,"elapsed":7,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"77615440-a13c-4560-e021-33f81aa2c87e"},"execution_count":24,"outputs":[{"output_type":"stream","name":"stdout","text":["['Hello', ' World!']\n","Hello World!\n"]}]},{"cell_type":"code","source":["# Write a function count_word_occurrences, that counts how many times the word word appears in the string (case-insensitive). Return the count.\n","def count_word_occurrences(s, word):\n"," return s.lower().count(word.lower())\n","\n","print(count_word_occurrences(\"Hello, World! hello, Python!\", \"hello\"))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"UR-BqaXV_e15","executionInfo":{"status":"ok","timestamp":1746552710262,"user_tz":-360,"elapsed":12,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"07d19816-1556-4921-d116-4c749e932d41"},"execution_count":25,"outputs":[{"output_type":"stream","name":"stdout","text":["2\n"]}]},{"cell_type":"markdown","source":["# Regular expressions basics\n","* Reference: https://www.w3schools.com/python/python_regex.asp#matchobject\n","* Practice Editor: https://regexr.com/\n","* Practice Problems: https://www.w3resource.com/python-exercises/re/"],"metadata":{"id":"9tEiHo4FCeF4"}},{"cell_type":"markdown","source":["The findall() Function"],"metadata":{"id":"IAIjmjEPRT4V"}},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.findall(\"ai\", txt)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"b31q-uDGMCa_","executionInfo":{"status":"ok","timestamp":1734101101186,"user_tz":-360,"elapsed":54,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"dbbf6be3-1651-43a6-981c-ec2fc19db451"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['ai', 'ai']\n"]}]},{"cell_type":"code","source":["import re\n","text = \"cat bat mat\"\n","result = re.findall(r\"[a-z]at\", text)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"zusEoodmbr-y","executionInfo":{"status":"ok","timestamp":1734167340171,"user_tz":-360,"elapsed":344,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"aa50f2c3-cc0a-46be-8a61-2e4b6b68abd5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['cat', 'bat', 'mat']\n"]}]},{"cell_type":"markdown","source":["The search() Function"],"metadata":{"id":"sBX4Lyh7RjYX"}},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.search(\"\\s\", txt)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"-DxtmPYhRkev","executionInfo":{"status":"ok","timestamp":1734154897683,"user_tz":-360,"elapsed":315,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"12ca84f0-4a07-41aa-827b-203a669a085b"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["<re.Match object; span=(3, 4), match=' '>\n"]}]},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.search(\"ai\", txt)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"an2v09fsRtY_","executionInfo":{"status":"ok","timestamp":1734101101187,"user_tz":-360,"elapsed":52,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"45470f65-8dd3-4f11-99c6-93735512ec61"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["<re.Match object; span=(5, 7), match='ai'>\n"]}]},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.search(r\"S\\w+\", txt)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"bwnZBfGfSW9l","executionInfo":{"status":"ok","timestamp":1734167476144,"user_tz":-360,"elapsed":317,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ce39cc00-9a4e-4834-ecab-50831e597b3a"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["<re.Match object; span=(12, 17), match='Spain'>\n"]}]},{"cell_type":"code","source":["import re\n","text = \"say hello to the world\"\n","result = re.search(r\"hello\", text)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"dv-N_PKcbCnV","executionInfo":{"status":"ok","timestamp":1734156133681,"user_tz":-360,"elapsed":344,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"2e8f4233-248b-4c72-8a74-b99147f2f73d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["<re.Match object; span=(4, 9), match='hello'>\n"]}]},{"cell_type":"markdown","source":["The split() Function"],"metadata":{"id":"LPbjCQeQXfXj"}},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.split(\"\\s\", txt)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"d3TcAi4GXfu7","executionInfo":{"status":"ok","timestamp":1734101101187,"user_tz":-360,"elapsed":48,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"d0e7bab0-f9d9-49d8-9c89-3295c6f60c2a"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['The', 'rain', 'in', 'Spain']\n"]}]},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.split(\"\\s\", txt, 1)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"S7oDuDddX3BV","executionInfo":{"status":"ok","timestamp":1734101101187,"user_tz":-360,"elapsed":46,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"5299b60f-1b01-4dc8-e376-1569a2bec21b"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['The', 'rain in Spain']\n"]}]},{"cell_type":"code","source":["import re\n","text = \"apple;banana,orange|grape\"\n","result = re.split(r\"[;,|]\", text)\n","print(result)"],"metadata":{"id":"gHNzWp-ucHN9","executionInfo":{"status":"ok","timestamp":1734101101187,"user_tz":-360,"elapsed":44,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b8631118-2363-49bb-8d03-1312c439cd5f","colab":{"base_uri":"https://localhost:8080/"}},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['apple', 'banana', 'orange', 'grape']\n"]}]},{"cell_type":"markdown","source":["The sub() Function"],"metadata":{"id":"HBeB8DxsZEKH"}},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.sub(\"\\s\", \"9\", txt)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"rROAkRoSX6cl","executionInfo":{"status":"ok","timestamp":1734101101187,"user_tz":-360,"elapsed":43,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"45e8e616-7c67-4a3c-95e5-8f073b4ae613"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["The9rain9in9Spain\n"]}]},{"cell_type":"code","source":["import re\n","txt = \"The rain in Spain\"\n","x = re.sub(\"\\s\", \"9\", txt, 2)\n","print(x)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"fXxTe2rrZMpo","executionInfo":{"status":"ok","timestamp":1734101101187,"user_tz":-360,"elapsed":41,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"5d8f5589-c5c1-454d-870d-7ee7a0de4af8"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["The9rain9in Spain\n"]}]},{"cell_type":"code","source":["import re\n","text = \"I love cats. Cats are great!\"\n","result = re.sub(r\"cats\", \"dogs\", text, flags=re.IGNORECASE)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"WhNrguoJb5JX","executionInfo":{"status":"ok","timestamp":1734156342291,"user_tz":-360,"elapsed":332,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"a1002c49-4f5c-4aff-bca1-e3644bea9a3f"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["I love dogs. dogs are great!\n"]}]},{"cell_type":"markdown","source":["**Examples**"],"metadata":{"id":"Kkx-fAUgLmpe"}},{"cell_type":"code","source":["import re\n","text = \"Do you like C++ or Python?\"\n","result = re.search(r\"C\\+\\+\", text)\n","print(result.group())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"oe9IKx5gLsYq","executionInfo":{"status":"ok","timestamp":1734156436620,"user_tz":-360,"elapsed":332,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"c704e2d4-4bea-4220-f826-d68ce11b5609"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["C++\n"]}]},{"cell_type":"code","source":["import re\n","email = \"user@example.com\"\n","pattern = r\"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,3}\"\n","result = re.search(pattern, email)\n","print(bool(result))\n","print(result.group())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"yRUz97o2MeUZ","executionInfo":{"status":"ok","timestamp":1734157115787,"user_tz":-360,"elapsed":311,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"70591688-ed92-4c5c-8eea-394d3f8d8f2c"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["True\n","user@example.com\n"]}]},{"cell_type":"code","source":["import re\n","email = \"19202103271@cse.bubt.edu.bd\"\n","pattern = r\"([a-zA-Z0-9._%+-])+@([a-zA-Z0-9.-]{3})\\.([a-zA-Z0-9.-])+.[bd]{2}\"\n","result = re.search(pattern, email)\n","print(bool(result))\n","print(result.group())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"q3WeAnKF3Hrf","executionInfo":{"status":"ok","timestamp":1734157444053,"user_tz":-360,"elapsed":342,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6382bfbc-78c8-4a0e-bc47-872e0576bac5"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["True\n","19202103271@cse.bubt.edu.bd\n"]}]},{"cell_type":"code","source":["import re\n","email = '''RegExr was created by gskinner.com.\n","01792103884\n","Edit the Expression & Text to see matches. Roll over matches or the expression for details. PCRE & JavaScript flavo+88-01692105884rs of RegEx are supported. Validate your expression with Tests mode.\n","The side bar includes a Cheatsheet, full Reference, and Help. You can a0lso Save & Share with the C01792103884ommunity and view arif@gmail.comatterns you create or favorite in My Patterns.\n","Explore results 01649305402654694945 with the Tools below. Replace & List user@example.comput custom @example.comresults. Detai+88-ls lists capture gro. Ex+88-01794503784plain describes your expression in plain English.\n","'''\n","pattern = r\"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,3}\"\n","result = re.findall(pattern, email)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"bZnuulozMRpG","executionInfo":{"status":"ok","timestamp":1734101101188,"user_tz":-360,"elapsed":35,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"08650104-043c-4edf-f6b2-c9b310f12a50"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['arif@gmail.com', 'user@example.com']\n"]}]},{"cell_type":"code","source":["import re\n","text = \"There are 12 cats and 45 dogs.\"\n","numbers = re.findall(r\"\\d+\", text)\n","print(numbers)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ATA0o28qNVVN","executionInfo":{"status":"ok","timestamp":1734101101188,"user_tz":-360,"elapsed":33,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"03d45c5f-0b50-4410-e262-9d6f4a000477"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['12', '45']\n"]}]},{"cell_type":"code","source":["import re\n","email = \"+88-01792103884\"\n","pattern = r\"^((?:\\+88-)?01[3-9]\\d{8})$\"\n","result = re.findall(pattern, email)\n","print(result)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"d49PNGPaMeZw","executionInfo":{"status":"ok","timestamp":1734170409589,"user_tz":-360,"elapsed":391,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"cdc68754-e861-439e-f9cc-de1efefc62dd"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['+88-01792103884']\n"]}]},{"cell_type":"code","source":["import re\n","text = '''RegExr was created by gskinner.com. Edit the Expression & Text to see matches. Roll over matches or the expression for details. PCRE & JavaScript flavo+88-01692105884rs of RegEx are supported. Validate your expression with Tests mode.\n","The side bar includes a Cheatsheet, full Reference, and Help. You can also Save & Share with the C017982103484ommunity and view patterns you create or favorite in My Patterns.\n","Explore results 01649305402 with the Tools below. Replace & List output example@example.comom results. Details lists capture groups. Ex+88-01794503784plain describes your expression in plain English.'''\n","pattern = r\"((?:\\+88-)?01[3-9]\\d{8})\"\n","result = re.findall(pattern, text)\n","print(result)"],"metadata":{"id":"gmDxIVP0OD4R","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1734170546392,"user_tz":-360,"elapsed":395,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"47534464-d986-4289-f92c-35bf15eee2ea"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['+88-01692105884', '01798210348', '01649305402', '+88-01794503784']\n"]}]},{"cell_type":"markdown","source":["# **`File Handling`**"],"metadata":{"id":"dK5WUlZgZDvE"}},{"cell_type":"markdown","source":["# Reading from and writing to files\n","* Practice Problems: https://www.w3resource.com/python-exercises/file/"],"metadata":{"id":"L0rqeUbuZ5pL"}},{"cell_type":"markdown","source":["**Reading from a File**\n","\n"],"metadata":{"id":"5cR2evZSa3_i"}},{"cell_type":"code","source":["# Read the Entire File\n","file = open(\"example.txt\", \"r\")\n","content = file.read()\n","print(content)\n","file.close()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ZtrjKU3id-tB","executionInfo":{"status":"ok","timestamp":1734101796259,"user_tz":-360,"elapsed":395,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b4d4cec3-de38-4333-bb9e-e356718a2e1d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["This is a new line of text.\n"]}]},{"cell_type":"code","source":["# Read the Entire File\n","with open(\"example.txt\", \"r\") as file:\n"," content = file.read()\n"," print(content)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ip3V6lvCZI3N","executionInfo":{"status":"ok","timestamp":1734101799502,"user_tz":-360,"elapsed":411,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"4ad95c81-eab4-4f47-aff1-7dba18f034d0"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["This is a new line of text.\n"]}]},{"cell_type":"code","source":["# Read Line by Line\n","with open(\"example.txt\", \"r\") as file:\n"," for line in file:\n"," print(line.strip())\n"," # print(line,end='')"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"_8yiFXqRbd1Q","executionInfo":{"status":"ok","timestamp":1734101804775,"user_tz":-360,"elapsed":389,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"494147e8-40ce-4cb3-e6cc-96b805852f69"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["This is a new line of text.\n"]}]},{"cell_type":"code","source":["# Read Specific Number of Characters\n","with open(\"example.txt\", \"r\") as file:\n"," content = file.read(10)\n"," print(content)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"k0yevkp4bjW3","executionInfo":{"status":"ok","timestamp":1734101815147,"user_tz":-360,"elapsed":388,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"67f95811-aefe-4866-98b3-bd3f24e71f9e"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["This is a \n"]}]},{"cell_type":"code","source":["# Use readlines() to Read All Lines into a List\n","with open(\"example.txt\", \"r\") as file:\n"," lines = file.readlines()\n"," print(lines)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"wg_BGhOfbqz4","executionInfo":{"status":"ok","timestamp":1734101817888,"user_tz":-360,"elapsed":405,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ea9df89a-33b6-4a11-dcfd-944ce5ba10fa"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['This is a new line of text.']\n"]}]},{"cell_type":"markdown","source":["**Writing to a File**"],"metadata":{"id":"Qc3ahbN6bxPo"}},{"cell_type":"code","source":["# Writing Text\n","with open(\"example.txt\", \"w\") as file:\n"," file.write(\"This is a new line of text.\")"],"metadata":{"id":"PqGECZsub3sR"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Appending Text\n","with open(\"example.txt\", \"a\") as file:\n"," file.write(\"\\nThis text is appended.\")"],"metadata":{"id":"DwrH6SK-b8u6"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["**Example: Reading and Writing**"],"metadata":{"id":"aOedk6hJcgIW"}},{"cell_type":"code","source":["# Writing to a file\n","with open(\"example.txt\", \"w\") as file:\n"," file.write(\"Hello, World!\\n\")\n"," file.write(\"This is Python file handling.\")\n","\n","# Reading from the file\n","with open(\"example.txt\", \"r\") as file:\n"," content = file.read()\n"," print(content)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"RBbDFz11cABi","executionInfo":{"status":"ok","timestamp":1734170982517,"user_tz":-360,"elapsed":418,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"4b7ff06e-ce8d-4402-8c6a-bafeae532a51"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Hello, World!\n","This is Python file handling.\n"]}]},{"cell_type":"code","source":["# Checking if a File Exists\n","import os\n","\n","if os.path.exists(\"/content/example.txt\"):\n"," print(\"File exists.\")\n","else:\n"," print(\"File does not exist.\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"NlxTCXBdcxPR","executionInfo":{"status":"ok","timestamp":1734171019666,"user_tz":-360,"elapsed":402,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"c238785a-a06a-42b7-cc52-ad0e6e9cb66d"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["File exists.\n"]}]},{"cell_type":"markdown","source":["**File Operations with Examples**"],"metadata":{"id":"WBtQY752c8IB"}},{"cell_type":"code","source":["# # Copying a File\n","# with open(\"source.txt\", \"w\") as src, open(\"destination.txt\", \"w\") as dest:\n","# src.write(\"Hello, World!\\n\")\n","# dest.write(\"Hello, World!\\n\")"],"metadata":{"id":"1QbVou1zhorv"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Copying a File\n","with open(\"source.txt\", \"r\") as src, open(\"destination.txt\", \"w\") as dest:\n"," data = src.read()\n"," dest.write(data)"],"metadata":{"id":"rJB1WCDWc9f6"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Counting Words in a File\n","with open(\"example.txt\", \"r\") as file:\n"," content = file.read()\n"," print(content)\n"," words = content.split()\n"," print(words)\n"," print(f\"Number of words: {len(words)}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"MoR76L7idBY5","executionInfo":{"status":"ok","timestamp":1734171175937,"user_tz":-360,"elapsed":379,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"07b952e2-19de-466a-9578-c11baee90814"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Hello, World!\n","This is Python file handling.\n","['Hello,', 'World!', 'This', 'is', 'Python', 'file', 'handling.']\n","Number of words: 7\n"]}]},{"cell_type":"code","source":["# Reading and Reversing Lines\n","with open(\"example.txt\", \"r\") as file:\n"," lines = file.readlines()\n","\n","with open(\"reversed.txt\", \"w\") as file:\n"," for line in reversed(lines):\n"," print(line)\n"," file.write(line)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"8HZMjvVidE6y","executionInfo":{"status":"ok","timestamp":1734171200224,"user_tz":-360,"elapsed":381,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ec19cc2f-a5a3-490a-b122-1079de45eb0c"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["This is Python file handling.\n","Hello, World!\n","\n"]}]},{"cell_type":"markdown","source":["**Error Handling with File Operations**"],"metadata":{"id":"BPxWzGXUdKZT"}},{"cell_type":"code","source":["try:\n"," with open(\"nonexistent.txt\", \"r\") as file:\n"," content = file.read()\n","except Exception as e:\n"," print(\"File not found!\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"NcdP3tP_dLeb","executionInfo":{"status":"ok","timestamp":1734171250318,"user_tz":-360,"elapsed":402,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"7b41ba27-2d09-44b1-99c5-7634b134bd0f"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["File not found!\n"]}]},{"cell_type":"markdown","source":["# **Working with different file types (CSV)**\n","* Practice Problems: https://www.w3resource.com/python-exercises/csv/index.php"],"metadata":{"id":"Dk5jkOO6jjJq"}},{"cell_type":"markdown","source":["**Reading from a File**"],"metadata":{"id":"jwQH68Lan6ri"}},{"cell_type":"code","source":["# Using csv.reader\n","import csv\n","with open(\"data.csv\", \"r\") as file:\n"," reader = csv.reader(file)\n"," for row in reader:\n"," print(row)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"rUo-ZiGZjm3a","executionInfo":{"status":"ok","timestamp":1734102025580,"user_tz":-360,"elapsed":383,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8cfe3d47-8281-467f-e820-b474ae4b70e4"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["['Name', 'Age', 'City']\n","['Alice', '30', 'New York']\n","['Bob', '25', 'Los Angeles']\n"]}]},{"cell_type":"code","source":["# Reading CSV into a List\n","import csv\n","with open(\"data.csv\", \"r\") as file:\n"," reader = csv.reader(file)\n"," data = list(reader)\n"," print(data)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"TPOvmAJen2YK","executionInfo":{"status":"ok","timestamp":1734102029188,"user_tz":-360,"elapsed":396,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"b42a6e55-f66f-4e8f-c163-f07e9662abae"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["[['Name', 'Age', 'City'], ['Alice', '30', 'New York'], ['Bob', '25', 'Los Angeles']]\n"]}]},{"cell_type":"code","source":["# Using DictReader\n","# Reads each row as a dictionary where the column headers are the keys.\n","import csv\n","with open(\"data.csv\", \"r\") as file:\n"," reader = csv.DictReader(file)\n"," for row in reader:\n"," print(row)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"iCgQQ5vSoG9U","executionInfo":{"status":"ok","timestamp":1734159148983,"user_tz":-360,"elapsed":521,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"6372f9b8-daba-4220-81f5-d8dd2a4a67a8"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["{'Name': 'Alice', 'Age': '30', 'City': 'New York'}\n","{'Name': 'Bob', 'Age': '25', 'City': 'Los Angeles'}\n"]}]},{"cell_type":"markdown","source":["**Writing to CSV Files**"],"metadata":{"id":"8UXIzaEKontv"}},{"cell_type":"code","source":["# Using csv.writer\n","import csv\n","data = [[\"Name\", \"Age\", \"City\"], [\"Alice\", 30, \"New York\"], [\"Bob\", 25, \"Los Angeles\"]]\n","with open(\"data.csv\", \"w\", newline=\"\") as file:\n"," writer = csv.writer(file)\n"," writer.writerows(data)"],"metadata":{"id":"hWHeCDq9oWie"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Using DictWriter\n","import csv\n","data = [{\"Name\": \"Alice\", \"Age\": 30, \"City\": \"New York\"}, {\"Name\": \"Bob\", \"Age\": 25, \"City\": \"Los Angeles\"}]\n","with open(\"output.csv\", \"w\", newline=\"\") as file:\n"," fieldnames = [\"Name\", \"Age\", \"City\"]\n"," writer = csv.DictWriter(file, fieldnames=fieldnames)\n","\n"," writer.writeheader() # Write column headers\n"," writer.writerows(data) # Write rows"],"metadata":{"id":"K5KCnht-o3mq"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["**Working with CSV Using pandas**"],"metadata":{"id":"y4_PW61JpIjr"}},{"cell_type":"code","source":["# Reading CSV\n","import pandas as pd\n","df = pd.read_csv(\"data.csv\")\n","print(df)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"gOT9ijeWpJwE","executionInfo":{"status":"ok","timestamp":1734171616623,"user_tz":-360,"elapsed":333,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"84762a10-18a5-4731-e281-0607d9f39f2e"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":[" Name Age City\n","0 Alice 30 New York\n","1 Bob 25 Los Angeles\n"]}]},{"cell_type":"code","source":["# Writing CSV\n","import pandas as pd\n","data = {\"Name\": [\"Alice\", \"Bob\"], \"Age\": [30, 25], \"City\": [\"New York\", \"Los Angeles\"]}\n","df = pd.DataFrame(data)\n","df.to_csv(\"data.csv\", index=False) # `index=False` avoids adding row numbers"],"metadata":{"id":"84299D4SpPkk"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["# Hands-On Project: Reading and Writing Data"],"metadata":{"id":"YpMF_l7Jx6wM"}},{"cell_type":"code","source":["with open(\"data.txt\", \"w\") as file:\n"," file.write(\"Arif,25,Dhaka\\nNayem,30,Barisal\\nRajib,22,Khulna\")"],"metadata":{"id":"cuKEFC6Njz2J"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["import csv\n","\n","# Step 1: Reading data from a text file\n","with open(\"data.txt\", \"r\") as file:\n"," lines = file.readlines()\n","\n","print(\"Original Data:\")\n","for line in lines:\n"," print(line.strip())\n","\n","# Step 2: Processing the data\n","data = []\n","for line in lines:\n"," print(line.strip().split(\",\"))\n"," name, age, city = line.strip().split(\",\")\n"," data.append({\"Name\": name, \"Age\": int(age), \"City\": city})\n","\n","print(\"\\nProcessed Data:\")\n","for entry in data:\n"," print(entry)\n","\n","# Step 3: Writing data to a CSV file\n","with open(\"output.csv\", \"w\", newline=\"\") as file:\n"," fieldnames = [\"Name\", \"Age\", \"City\"]\n"," writer = csv.DictWriter(file, fieldnames=fieldnames)\n","\n"," writer.writeheader()\n"," writer.writerows(data)\n","\n","print(\"\\nData has been written to output.csv\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"kLS4fqkOxl24","executionInfo":{"status":"ok","timestamp":1734171841555,"user_tz":-360,"elapsed":357,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"01d3c27c-d0e7-4130-a568-18822b1ea310"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["Original Data:\n","Arif,25,Dhaka\n","Nayem,30,Barisal\n","Rajib,22,Khulna\n","['Arif', '25', 'Dhaka']\n","['Nayem', '30', 'Barisal']\n","['Rajib', '22', 'Khulna']\n","\n","Processed Data:\n","{'Name': 'Arif', 'Age': 25, 'City': 'Dhaka'}\n","{'Name': 'Nayem', 'Age': 30, 'City': 'Barisal'}\n","{'Name': 'Rajib', 'Age': 22, 'City': 'Khulna'}\n","\n","Data has been written to output.csv\n"]}]},{"cell_type":"markdown","source":["# Using pandas for CSV"],"metadata":{"id":"AVjTUSBN2s-N"}},{"cell_type":"code","source":["import pandas as pd\n","df = pd.read_csv('data.csv')\n","df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":125},"id":"Zmw-fNQg2vYX","executionInfo":{"status":"ok","timestamp":1734102497469,"user_tz":-360,"elapsed":395,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"55cfa065-6b35-49f1-8906-0bbe1eaf0a7c"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Name Age City\n","0 Alice 30 New York\n","1 Bob 25 Los Angeles"],"text/html":["\n"," <div id=\"df-7d3e416e-77bc-4751-bd3b-c3d984752d0e\" class=\"colab-df-container\">\n"," <div>\n","<style scoped>\n"," .dataframe tbody tr th:only-of-type {\n"," vertical-align: middle;\n"," }\n","\n"," .dataframe tbody tr th {\n"," vertical-align: top;\n"," }\n","\n"," .dataframe thead th {\n"," text-align: right;\n"," }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n"," <thead>\n"," <tr style=\"text-align: right;\">\n"," <th></th>\n"," <th>Name</th>\n"," <th>Age</th>\n"," <th>City</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>Alice</td>\n"," <td>30</td>\n"," <td>New York</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td>Bob</td>\n"," <td>25</td>\n"," <td>Los Angeles</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>\n"," <div class=\"colab-df-buttons\">\n","\n"," <div class=\"colab-df-container\">\n"," <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-7d3e416e-77bc-4751-bd3b-c3d984752d0e')\"\n"," title=\"Convert this dataframe to an interactive table.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n"," <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n"," </svg>\n"," </button>\n","\n"," <style>\n"," .colab-df-container {\n"," display:flex;\n"," gap: 12px;\n"," }\n","\n"," .colab-df-convert {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-convert:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," .colab-df-buttons div {\n"," margin-bottom: 4px;\n"," }\n","\n"," [theme=dark] .colab-df-convert {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-convert:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n","\n"," <script>\n"," const buttonEl =\n"," document.querySelector('#df-7d3e416e-77bc-4751-bd3b-c3d984752d0e button.colab-df-convert');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," async function convertToInteractive(key) {\n"," const element = document.querySelector('#df-7d3e416e-77bc-4751-bd3b-c3d984752d0e');\n"," const dataTable =\n"," await google.colab.kernel.invokeFunction('convertToInteractive',\n"," [key], {});\n"," if (!dataTable) return;\n","\n"," const docLinkHtml = 'Like what you see? Visit the ' +\n"," '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n"," + ' to learn more about interactive tables.';\n"," element.innerHTML = '';\n"," dataTable['output_type'] = 'display_data';\n"," await google.colab.output.renderOutput(dataTable, element);\n"," const docLink = document.createElement('div');\n"," docLink.innerHTML = docLinkHtml;\n"," element.appendChild(docLink);\n"," }\n"," </script>\n"," </div>\n","\n","\n","<div id=\"df-f53471d5-127c-4be5-8e28-6b83e670bd40\">\n"," <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-f53471d5-127c-4be5-8e28-6b83e670bd40')\"\n"," title=\"Suggest charts\"\n"," style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <g>\n"," <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n"," </g>\n","</svg>\n"," </button>\n","\n","<style>\n"," .colab-df-quickchart {\n"," --bg-color: #E8F0FE;\n"," --fill-color: #1967D2;\n"," --hover-bg-color: #E2EBFA;\n"," --hover-fill-color: #174EA6;\n"," --disabled-fill-color: #AAA;\n"," --disabled-bg-color: #DDD;\n"," }\n","\n"," [theme=dark] .colab-df-quickchart {\n"," --bg-color: #3B4455;\n"," --fill-color: #D2E3FC;\n"," --hover-bg-color: #434B5C;\n"," --hover-fill-color: #FFFFFF;\n"," --disabled-bg-color: #3B4455;\n"," --disabled-fill-color: #666;\n"," }\n","\n"," .colab-df-quickchart {\n"," background-color: var(--bg-color);\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: var(--fill-color);\n"," height: 32px;\n"," padding: 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-quickchart:hover {\n"," background-color: var(--hover-bg-color);\n"," box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: var(--button-hover-fill-color);\n"," }\n","\n"," .colab-df-quickchart-complete:disabled,\n"," .colab-df-quickchart-complete:disabled:hover {\n"," background-color: var(--disabled-bg-color);\n"," fill: var(--disabled-fill-color);\n"," box-shadow: none;\n"," }\n","\n"," .colab-df-spinner {\n"," border: 2px solid var(--fill-color);\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," animation:\n"," spin 1s steps(1) infinite;\n"," }\n","\n"," @keyframes spin {\n"," 0% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," border-left-color: var(--fill-color);\n"," }\n"," 20% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 30% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," border-right-color: var(--fill-color);\n"," }\n"," 40% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 60% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," }\n"," 80% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-bottom-color: var(--fill-color);\n"," }\n"," 90% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," }\n"," }\n","</style>\n","\n"," <script>\n"," async function quickchart(key) {\n"," const quickchartButtonEl =\n"," document.querySelector('#' + key + ' button');\n"," quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n"," quickchartButtonEl.classList.add('colab-df-spinner');\n"," try {\n"," const charts = await google.colab.kernel.invokeFunction(\n"," 'suggestCharts', [key], {});\n"," } catch (error) {\n"," console.error('Error during call to suggestCharts:', error);\n"," }\n"," quickchartButtonEl.classList.remove('colab-df-spinner');\n"," quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n"," }\n"," (() => {\n"," let quickchartButtonEl =\n"," document.querySelector('#df-f53471d5-127c-4be5-8e28-6b83e670bd40 button');\n"," quickchartButtonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n"," })();\n"," </script>\n","</div>\n","\n"," <div id=\"id_7a596856-ed6c-4f79-a49c-a1e6c260711c\">\n"," <style>\n"," .colab-df-generate {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-generate:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," [theme=dark] .colab-df-generate {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-generate:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n"," <button class=\"colab-df-generate\" onclick=\"generateWithVariable('df')\"\n"," title=\"Generate code using this dataframe.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n"," </svg>\n"," </button>\n"," <script>\n"," (() => {\n"," const buttonEl =\n"," document.querySelector('#id_7a596856-ed6c-4f79-a49c-a1e6c260711c button.colab-df-generate');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," buttonEl.onclick = () => {\n"," google.colab.notebook.generateWithVariable('df');\n"," }\n"," })();\n"," </script>\n"," </div>\n","\n"," </div>\n"," </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df","summary":"{\n \"name\": \"df\",\n \"rows\": 2,\n \"fields\": [\n {\n \"column\": \"Name\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"Bob\",\n \"Alice\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 3,\n \"min\": 25,\n \"max\": 30,\n \"num_unique_values\": 2,\n \"samples\": [\n 25,\n 30\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"City\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"Los Angeles\",\n \"New York\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":81}]},{"cell_type":"code","source":["# Display the first few rows\n","print(df.head())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"-AVdtSyv2_WS","executionInfo":{"status":"ok","timestamp":1734102499310,"user_tz":-360,"elapsed":3,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"38984caa-1985-452a-f1b7-5c054c4922e7"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":[" Name Age City\n","0 Alice 30 New York\n","1 Bob 25 Los Angeles\n"]}]},{"cell_type":"code","source":["# Display basic info about the dataset\n","print(df.info())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"cVyOBWva3Cq7","executionInfo":{"status":"ok","timestamp":1734102504131,"user_tz":-360,"elapsed":439,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"95d1b99e-d7af-42ae-fc3b-12188ebdbbc1"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["<class 'pandas.core.frame.DataFrame'>\n","RangeIndex: 2 entries, 0 to 1\n","Data columns (total 3 columns):\n"," # Column Non-Null Count Dtype \n","--- ------ -------------- ----- \n"," 0 Name 2 non-null object\n"," 1 Age 2 non-null int64 \n"," 2 City 2 non-null object\n","dtypes: int64(1), object(2)\n","memory usage: 176.0+ bytes\n","None\n"]}]},{"cell_type":"code","source":["# Summary statistics\n","print(df.describe())"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"cFpdNlF73__5","executionInfo":{"status":"ok","timestamp":1734102508862,"user_tz":-360,"elapsed":373,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"8b97eca5-dd0e-475a-bf8a-21e2a080e4ee"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":[" Age\n","count 2.000000\n","mean 27.500000\n","std 3.535534\n","min 25.000000\n","25% 26.250000\n","50% 27.500000\n","75% 28.750000\n","max 30.000000\n"]}]},{"cell_type":"markdown","source":["**Manipulating Data**"],"metadata":{"id":"vLHXxBe84Kli"}},{"cell_type":"code","source":["# Selecting Columns\n","selected_column = df['Name']\n","print(selected_column)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"3k3TIZnv4IMi","executionInfo":{"status":"ok","timestamp":1734102514845,"user_tz":-360,"elapsed":384,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"57b85c4c-b2fe-4e61-a02a-214a027fa8a8"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["0 Alice\n","1 Bob\n","Name: Name, dtype: object\n"]}]},{"cell_type":"code","source":["# Filtering Rows\n","filtered_df = df[df['Age'] > 20]\n","print(filtered_df)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"F3aApGde4bUM","executionInfo":{"status":"ok","timestamp":1734102625153,"user_tz":-360,"elapsed":381,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"2988493f-c52a-4f1a-b488-3832f53a3000"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":[" Name Age City\n","0 Alice 30 New York\n","1 Bob 25 Los Angeles\n"]}]},{"cell_type":"code","source":["# Adding/Modifying Columns\n","df['new_column'] = df['Name'] + df['City']\n","df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":125},"id":"zVxF6iqJ4upV","executionInfo":{"status":"ok","timestamp":1734102637586,"user_tz":-360,"elapsed":399,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"ac2a960e-2458-406a-a312-96a0c23a8ced"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Name Age City new_column\n","0 Alice 30 New York AliceNew York\n","1 Bob 25 Los Angeles BobLos Angeles"],"text/html":["\n"," <div id=\"df-857da180-26db-4794-927f-0dae834454fd\" class=\"colab-df-container\">\n"," <div>\n","<style scoped>\n"," .dataframe tbody tr th:only-of-type {\n"," vertical-align: middle;\n"," }\n","\n"," .dataframe tbody tr th {\n"," vertical-align: top;\n"," }\n","\n"," .dataframe thead th {\n"," text-align: right;\n"," }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n"," <thead>\n"," <tr style=\"text-align: right;\">\n"," <th></th>\n"," <th>Name</th>\n"," <th>Age</th>\n"," <th>City</th>\n"," <th>new_column</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>Alice</td>\n"," <td>30</td>\n"," <td>New York</td>\n"," <td>AliceNew York</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td>Bob</td>\n"," <td>25</td>\n"," <td>Los Angeles</td>\n"," <td>BobLos Angeles</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>\n"," <div class=\"colab-df-buttons\">\n","\n"," <div class=\"colab-df-container\">\n"," <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-857da180-26db-4794-927f-0dae834454fd')\"\n"," title=\"Convert this dataframe to an interactive table.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n"," <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n"," </svg>\n"," </button>\n","\n"," <style>\n"," .colab-df-container {\n"," display:flex;\n"," gap: 12px;\n"," }\n","\n"," .colab-df-convert {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-convert:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," .colab-df-buttons div {\n"," margin-bottom: 4px;\n"," }\n","\n"," [theme=dark] .colab-df-convert {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-convert:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n","\n"," <script>\n"," const buttonEl =\n"," document.querySelector('#df-857da180-26db-4794-927f-0dae834454fd button.colab-df-convert');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," async function convertToInteractive(key) {\n"," const element = document.querySelector('#df-857da180-26db-4794-927f-0dae834454fd');\n"," const dataTable =\n"," await google.colab.kernel.invokeFunction('convertToInteractive',\n"," [key], {});\n"," if (!dataTable) return;\n","\n"," const docLinkHtml = 'Like what you see? Visit the ' +\n"," '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n"," + ' to learn more about interactive tables.';\n"," element.innerHTML = '';\n"," dataTable['output_type'] = 'display_data';\n"," await google.colab.output.renderOutput(dataTable, element);\n"," const docLink = document.createElement('div');\n"," docLink.innerHTML = docLinkHtml;\n"," element.appendChild(docLink);\n"," }\n"," </script>\n"," </div>\n","\n","\n","<div id=\"df-3539aa54-1390-4bc3-ac6e-1e918c279762\">\n"," <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-3539aa54-1390-4bc3-ac6e-1e918c279762')\"\n"," title=\"Suggest charts\"\n"," style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <g>\n"," <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n"," </g>\n","</svg>\n"," </button>\n","\n","<style>\n"," .colab-df-quickchart {\n"," --bg-color: #E8F0FE;\n"," --fill-color: #1967D2;\n"," --hover-bg-color: #E2EBFA;\n"," --hover-fill-color: #174EA6;\n"," --disabled-fill-color: #AAA;\n"," --disabled-bg-color: #DDD;\n"," }\n","\n"," [theme=dark] .colab-df-quickchart {\n"," --bg-color: #3B4455;\n"," --fill-color: #D2E3FC;\n"," --hover-bg-color: #434B5C;\n"," --hover-fill-color: #FFFFFF;\n"," --disabled-bg-color: #3B4455;\n"," --disabled-fill-color: #666;\n"," }\n","\n"," .colab-df-quickchart {\n"," background-color: var(--bg-color);\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: var(--fill-color);\n"," height: 32px;\n"," padding: 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-quickchart:hover {\n"," background-color: var(--hover-bg-color);\n"," box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: var(--button-hover-fill-color);\n"," }\n","\n"," .colab-df-quickchart-complete:disabled,\n"," .colab-df-quickchart-complete:disabled:hover {\n"," background-color: var(--disabled-bg-color);\n"," fill: var(--disabled-fill-color);\n"," box-shadow: none;\n"," }\n","\n"," .colab-df-spinner {\n"," border: 2px solid var(--fill-color);\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," animation:\n"," spin 1s steps(1) infinite;\n"," }\n","\n"," @keyframes spin {\n"," 0% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," border-left-color: var(--fill-color);\n"," }\n"," 20% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 30% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," border-right-color: var(--fill-color);\n"," }\n"," 40% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 60% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," }\n"," 80% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-bottom-color: var(--fill-color);\n"," }\n"," 90% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," }\n"," }\n","</style>\n","\n"," <script>\n"," async function quickchart(key) {\n"," const quickchartButtonEl =\n"," document.querySelector('#' + key + ' button');\n"," quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n"," quickchartButtonEl.classList.add('colab-df-spinner');\n"," try {\n"," const charts = await google.colab.kernel.invokeFunction(\n"," 'suggestCharts', [key], {});\n"," } catch (error) {\n"," console.error('Error during call to suggestCharts:', error);\n"," }\n"," quickchartButtonEl.classList.remove('colab-df-spinner');\n"," quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n"," }\n"," (() => {\n"," let quickchartButtonEl =\n"," document.querySelector('#df-3539aa54-1390-4bc3-ac6e-1e918c279762 button');\n"," quickchartButtonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n"," })();\n"," </script>\n","</div>\n","\n"," <div id=\"id_93e2f479-49f9-4f6d-ad74-c474c95522ae\">\n"," <style>\n"," .colab-df-generate {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-generate:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," [theme=dark] .colab-df-generate {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-generate:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n"," <button class=\"colab-df-generate\" onclick=\"generateWithVariable('df')\"\n"," title=\"Generate code using this dataframe.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n"," </svg>\n"," </button>\n"," <script>\n"," (() => {\n"," const buttonEl =\n"," document.querySelector('#id_93e2f479-49f9-4f6d-ad74-c474c95522ae button.colab-df-generate');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," buttonEl.onclick = () => {\n"," google.colab.notebook.generateWithVariable('df');\n"," }\n"," })();\n"," </script>\n"," </div>\n","\n"," </div>\n"," </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df","summary":"{\n \"name\": \"df\",\n \"rows\": 2,\n \"fields\": [\n {\n \"column\": \"Name\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"Bob\",\n \"Alice\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 3,\n \"min\": 25,\n \"max\": 30,\n \"num_unique_values\": 2,\n \"samples\": [\n 25,\n 30\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"City\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"Los Angeles\",\n \"New York\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"new_column\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"BobLos Angeles\",\n \"AliceNew York\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":88}]},{"cell_type":"code","source":["# Dropping Columns\n","df.drop('new_column', axis=1, inplace=True)\n","df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":125},"id":"us-WJzRm5EhJ","executionInfo":{"status":"ok","timestamp":1734102644178,"user_tz":-360,"elapsed":444,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"112cb3e8-7b90-4ad5-c9f0-46df7269daee"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Name Age City\n","0 Alice 30 New York\n","1 Bob 25 Los Angeles"],"text/html":["\n"," <div id=\"df-b1dedfc6-bb44-4743-a088-9510d4b1d301\" class=\"colab-df-container\">\n"," <div>\n","<style scoped>\n"," .dataframe tbody tr th:only-of-type {\n"," vertical-align: middle;\n"," }\n","\n"," .dataframe tbody tr th {\n"," vertical-align: top;\n"," }\n","\n"," .dataframe thead th {\n"," text-align: right;\n"," }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n"," <thead>\n"," <tr style=\"text-align: right;\">\n"," <th></th>\n"," <th>Name</th>\n"," <th>Age</th>\n"," <th>City</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>Alice</td>\n"," <td>30</td>\n"," <td>New York</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td>Bob</td>\n"," <td>25</td>\n"," <td>Los Angeles</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>\n"," <div class=\"colab-df-buttons\">\n","\n"," <div class=\"colab-df-container\">\n"," <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-b1dedfc6-bb44-4743-a088-9510d4b1d301')\"\n"," title=\"Convert this dataframe to an interactive table.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n"," <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n"," </svg>\n"," </button>\n","\n"," <style>\n"," .colab-df-container {\n"," display:flex;\n"," gap: 12px;\n"," }\n","\n"," .colab-df-convert {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-convert:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," .colab-df-buttons div {\n"," margin-bottom: 4px;\n"," }\n","\n"," [theme=dark] .colab-df-convert {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-convert:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n","\n"," <script>\n"," const buttonEl =\n"," document.querySelector('#df-b1dedfc6-bb44-4743-a088-9510d4b1d301 button.colab-df-convert');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," async function convertToInteractive(key) {\n"," const element = document.querySelector('#df-b1dedfc6-bb44-4743-a088-9510d4b1d301');\n"," const dataTable =\n"," await google.colab.kernel.invokeFunction('convertToInteractive',\n"," [key], {});\n"," if (!dataTable) return;\n","\n"," const docLinkHtml = 'Like what you see? Visit the ' +\n"," '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n"," + ' to learn more about interactive tables.';\n"," element.innerHTML = '';\n"," dataTable['output_type'] = 'display_data';\n"," await google.colab.output.renderOutput(dataTable, element);\n"," const docLink = document.createElement('div');\n"," docLink.innerHTML = docLinkHtml;\n"," element.appendChild(docLink);\n"," }\n"," </script>\n"," </div>\n","\n","\n","<div id=\"df-834c0a91-a5f9-4463-b032-75df424a8c75\">\n"," <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-834c0a91-a5f9-4463-b032-75df424a8c75')\"\n"," title=\"Suggest charts\"\n"," style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <g>\n"," <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n"," </g>\n","</svg>\n"," </button>\n","\n","<style>\n"," .colab-df-quickchart {\n"," --bg-color: #E8F0FE;\n"," --fill-color: #1967D2;\n"," --hover-bg-color: #E2EBFA;\n"," --hover-fill-color: #174EA6;\n"," --disabled-fill-color: #AAA;\n"," --disabled-bg-color: #DDD;\n"," }\n","\n"," [theme=dark] .colab-df-quickchart {\n"," --bg-color: #3B4455;\n"," --fill-color: #D2E3FC;\n"," --hover-bg-color: #434B5C;\n"," --hover-fill-color: #FFFFFF;\n"," --disabled-bg-color: #3B4455;\n"," --disabled-fill-color: #666;\n"," }\n","\n"," .colab-df-quickchart {\n"," background-color: var(--bg-color);\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: var(--fill-color);\n"," height: 32px;\n"," padding: 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-quickchart:hover {\n"," background-color: var(--hover-bg-color);\n"," box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: var(--button-hover-fill-color);\n"," }\n","\n"," .colab-df-quickchart-complete:disabled,\n"," .colab-df-quickchart-complete:disabled:hover {\n"," background-color: var(--disabled-bg-color);\n"," fill: var(--disabled-fill-color);\n"," box-shadow: none;\n"," }\n","\n"," .colab-df-spinner {\n"," border: 2px solid var(--fill-color);\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," animation:\n"," spin 1s steps(1) infinite;\n"," }\n","\n"," @keyframes spin {\n"," 0% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," border-left-color: var(--fill-color);\n"," }\n"," 20% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 30% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," border-right-color: var(--fill-color);\n"," }\n"," 40% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 60% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," }\n"," 80% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-bottom-color: var(--fill-color);\n"," }\n"," 90% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," }\n"," }\n","</style>\n","\n"," <script>\n"," async function quickchart(key) {\n"," const quickchartButtonEl =\n"," document.querySelector('#' + key + ' button');\n"," quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n"," quickchartButtonEl.classList.add('colab-df-spinner');\n"," try {\n"," const charts = await google.colab.kernel.invokeFunction(\n"," 'suggestCharts', [key], {});\n"," } catch (error) {\n"," console.error('Error during call to suggestCharts:', error);\n"," }\n"," quickchartButtonEl.classList.remove('colab-df-spinner');\n"," quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n"," }\n"," (() => {\n"," let quickchartButtonEl =\n"," document.querySelector('#df-834c0a91-a5f9-4463-b032-75df424a8c75 button');\n"," quickchartButtonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n"," })();\n"," </script>\n","</div>\n","\n"," <div id=\"id_80feeaba-39ac-49dc-89a2-691b25156adb\">\n"," <style>\n"," .colab-df-generate {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-generate:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," [theme=dark] .colab-df-generate {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-generate:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n"," <button class=\"colab-df-generate\" onclick=\"generateWithVariable('df')\"\n"," title=\"Generate code using this dataframe.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n"," </svg>\n"," </button>\n"," <script>\n"," (() => {\n"," const buttonEl =\n"," document.querySelector('#id_80feeaba-39ac-49dc-89a2-691b25156adb button.colab-df-generate');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," buttonEl.onclick = () => {\n"," google.colab.notebook.generateWithVariable('df');\n"," }\n"," })();\n"," </script>\n"," </div>\n","\n"," </div>\n"," </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df","summary":"{\n \"name\": \"df\",\n \"rows\": 2,\n \"fields\": [\n {\n \"column\": \"Name\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"Bob\",\n \"Alice\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Age\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 3,\n \"min\": 25,\n \"max\": 30,\n \"num_unique_values\": 2,\n \"samples\": [\n 25,\n 30\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"City\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"Los Angeles\",\n \"New York\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":89}]},{"cell_type":"code","source":["# Save the modified DataFrame to a new CSV\n","df.to_csv('modified_file.csv', index=False)"],"metadata":{"id":"_g6Nx79B5bpM"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["# Students Database Project With Pandas"],"metadata":{"id":"Qlayisw86qqZ"}},{"cell_type":"code","source":["import pandas as pd\n","import os\n","\n","# File path for the CSV\n","file_path = \"student.csv\"\n","\n","# Create a sample CSV if it doesn't exist\n","if not os.path.exists(file_path):\n"," df = pd.DataFrame(columns=[\"ID\", \"Name\", \"Intake\", \"Department\"])\n"," df.to_csv(file_path, index=False)\n","\n","\n","def read_data():\n"," \"\"\"Read and display the student database.\"\"\"\n"," df = pd.read_csv(file_path)\n"," if df.empty:\n"," print(\"No student data found!\")\n"," else:\n"," print(\"\\nStudent Database:\")\n"," print(df)\n","\n","\n","def create_student():\n"," \"\"\"Add a new student to the database.\"\"\"\n"," df = pd.read_csv(file_path)\n","\n"," # Collect student details\n"," student_id = input(\"Enter Student ID: \").strip()\n"," name = input(\"Enter Name: \").strip()\n"," intake = input(\"Enter Intake: \").strip()\n"," department = input(\"Enter Department: \").strip()\n","\n"," # Check if ID already exists\n"," if student_id in df[\"ID\"].values:\n"," print(\"Error: Student ID already exists.\")\n"," return\n","\n"," # Add to the DataFrame\n"," new_student = pd.DataFrame([{\"ID\": student_id, \"Name\": name, \"Intake\": intake, \"Department\": department}])\n"," df = pd.concat([df, new_student], ignore_index=True)\n"," df.to_csv(file_path, index=False)\n"," print(\"Student added successfully!\")\n","\n","\n","def update_student():\n"," \"\"\"Update details of an existing student.\"\"\"\n"," df = pd.read_csv(file_path)\n","\n"," if df.empty:\n"," print(\"No student data to update!\")\n"," return\n","\n"," student_id = input(\"Enter Student ID to update: \").strip()\n","\n"," # Check if the ID exists\n"," if student_id not in df[\"ID\"].values:\n"," print(\"Student ID not found!\")\n"," return\n","\n"," # Get new details\n"," print(\"Leave field empty to keep existing data.\")\n"," name = input(\"Enter new Name: \").strip()\n"," intake = input(\"Enter new Intake: \").strip()\n"," department = input(\"Enter new Department: \").strip()\n","\n"," # Update DataFrame\n"," if name:\n"," df.loc[df[\"ID\"] == student_id, \"Name\"] = name\n"," if intake:\n"," df.loc[df[\"ID\"] == student_id, \"Intake\"] = intake\n"," if department:\n"," df.loc[df[\"ID\"] == student_id, \"Department\"] = department\n","\n"," df.to_csv(file_path, index=False)\n"," print(\"Student updated successfully!\")\n","\n","\n","def delete_student():\n"," \"\"\"Delete a student from the database.\"\"\"\n"," df = pd.read_csv(file_path)\n","\n"," if df.empty:\n"," print(\"No student data to delete!\")\n"," return\n","\n"," student_id = input(\"Enter Student ID to delete: \").strip()\n","\n"," # Check if the ID exists\n"," if student_id not in df[\"ID\"].values:\n"," print(\"Student ID not found!\")\n"," return\n","\n"," # Remove from DataFrame\n"," df = df[df[\"ID\"] != student_id]\n"," df.to_csv(file_path, index=False)\n"," print(\"Student deleted successfully!\")\n","\n","\n","def main():\n"," \"\"\"Main menu for the Student Database.\"\"\"\n"," while True:\n"," print(\"\\nStudent Database Management\")\n"," print(\"1. View Students\")\n"," print(\"2. Add Student\")\n"," print(\"3. Update Student\")\n"," print(\"4. Delete Student\")\n"," print(\"5. Exit\")\n","\n"," choice = input(\"Enter your choice: \").strip()\n","\n"," if choice == \"1\":\n"," read_data()\n"," elif choice == \"2\":\n"," create_student()\n"," elif choice == \"3\":\n"," update_student()\n"," elif choice == \"4\":\n"," delete_student()\n"," elif choice == \"5\":\n"," print(\"Exiting the program.\")\n"," break\n"," else:\n"," print(\"Invalid choice. Please try again.\")\n","\n","\n","if __name__ == \"__main__\":\n"," main()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"rCjhFeaQ5ytO","executionInfo":{"status":"ok","timestamp":1734172328584,"user_tz":-360,"elapsed":69543,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"57051875-cf26-47b4-a09e-6a8c157ea332"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","Student Database Management\n","1. View Students\n","2. Add Student\n","3. Update Student\n","4. Delete Student\n","5. Exit\n","Enter your choice: 2\n","Enter Student ID: 71\n","Enter Name: AA\n","Enter Intake: 44\n","Enter Department: CSE\n","Student added successfully!\n","\n","Student Database Management\n","1. View Students\n","2. Add Student\n","3. Update Student\n","4. Delete Student\n","5. Exit\n","Enter your choice: 1\n","\n","Student Database:\n"," ID Name Intake Department\n","0 71 AA 44 CSE\n","\n","Student Database Management\n","1. View Students\n","2. Add Student\n","3. Update Student\n","4. Delete Student\n","5. Exit\n","Enter your choice: 4\n","Enter Student ID to delete: 1\n","Student ID not found!\n","\n","Student Database Management\n","1. View Students\n","2. Add Student\n","3. Update Student\n","4. Delete Student\n","5. Exit\n","Enter your choice: 5\n","Exiting the program.\n"]}]},{"cell_type":"code","source":[],"metadata":{"id":"ntYUfOhOmv_T"},"execution_count":null,"outputs":[]}]}
python course old/Session/web_scraping.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"cells":[{"cell_type":"markdown","source":["# `Web Scraping`\n"],"metadata":{"id":"wNfH3-kA5Usr"}},{"cell_type":"markdown","source":["# Introduction to web scraping with BeautifulSoup\n","* Web scraping involves extracting data from websites.\n","* Useful for gathering information easily.\n","* BeautifulSoup, from the bs4 package, is a popular Python library for web scraping.\n","* Simplifies parsing of HTML and XML documents to extract desired information.\n","\n","* Reference: [brightdata](https://brightdata.com/blog/how-tos/beautiful-soup-web-scraping#:~:text=Web%20Scraping%20with%20Beautiful%20Soup&text=The%20library%20automatically%20selects%20the,fast%20and%20efficient%20lxml%20parser.)\n","* User Agent: [whatismybrowser](https://www.whatismybrowser.com/detect/what-is-my-user-agent/)"],"metadata":{"id":"pp3qeU7J5Bqb"}},{"cell_type":"markdown","source":["Installation and Declaration"],"metadata":{"id":"-7U3woPO6i-5"}},{"cell_type":"code","source":["# %pip install beautifulsoup4 requests"],"metadata":{"id":"IWesAnWQ6XZH"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["Fetching Web Content"],"metadata":{"id":"sNfUIUU17PGr"}},{"cell_type":"code","source":["# Fetching Web Content\n","import requests\n","url = \"https://walid.vercel.app\"\n","headers = {\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36\"}\n","response = requests.get(url,headers)\n","print(response)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"ZtyuOw5u60XX","executionInfo":{"status":"ok","timestamp":1734172922647,"user_tz":-360,"elapsed":3487,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"7110f21e-24c3-4abe-97cd-a23de2776505"},"execution_count":1,"outputs":[{"output_type":"stream","name":"stdout","text":["<Response [200]>\n"]}]},{"cell_type":"code","source":["# Parsing the HTML\n","from bs4 import BeautifulSoup\n","soup = BeautifulSoup(response.content, \"html.parser\")"],"metadata":{"id":"Nm_Sd86T7AOW","executionInfo":{"status":"ok","timestamp":1734173000239,"user_tz":-360,"elapsed":347,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":2,"outputs":[]},{"cell_type":"markdown","source":["Basic Operations with BeautifulSoup"],"metadata":{"id":"UXxbjr0l8Bu6"}},{"cell_type":"code","source":["# Find tag name\n","title = soup.find(\"title\")\n","print(title)\n","print(title.text)\n","print(title.contents)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"yxzR1JJ-7bwe","executionInfo":{"status":"ok","timestamp":1734173006245,"user_tz":-360,"elapsed":349,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"71c27510-0fc5-4418-c152-e7d5d2d51c40"},"execution_count":3,"outputs":[{"output_type":"stream","name":"stdout","text":["<title>Walid</title>\n","Walid\n","['Walid']\n"]}]},{"cell_type":"code","source":["# All occurrences of a tag\n","links = soup.find_all(\"a\")"],"metadata":{"id":"VR7-pWDE7bs-","executionInfo":{"status":"ok","timestamp":1734173054542,"user_tz":-360,"elapsed":455,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"execution_count":4,"outputs":[]},{"cell_type":"markdown","source":["**Practical exercises**"],"metadata":{"id":"1YOwsGSk8z63"}},{"cell_type":"code","source":["import re\n","lst = []\n","for i in links:\n"," result = re.findall(r'https:\\/\\/(?:www\\.)?[a-zA-Z0-9-]+\\.[a-zA-Z]{2,}(?:\\/[a-zA-Z0-9._~:/?#@!$&\\'()*+,;=%-]*)?', str(i))\n"," if result:\n"," lst.append(result)\n","print(lst)\n","\n","new_lst = []\n","for i in lst:\n"," new_lst.append(''.join(i))\n","print(new_lst)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"uBBRevC724cZ","executionInfo":{"status":"ok","timestamp":1734173240756,"user_tz":-360,"elapsed":351,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"1bb162e4-a819-4de7-dcff-46c48c2a4950"},"execution_count":6,"outputs":[{"output_type":"stream","name":"stdout","text":["[['https://www.linkedin.com/in/munsiwalidalhassannizhu'], ['https://www.facebook.com/whalidmunshi'], ['https://huggingface.co/WalidAlHassan'], ['https://github.com/walid3271'], ['https://huggingface.co/WalidAlHassan/Face-Detection-Using-URL'], ['https://huggingface.co/WalidAlHassan/Floor-Object-Rooms-and-Bed-direction-Identification-according-to-Vastu-angle'], ['https://huggingface.co/WalidAlHassan/GMP_Face_Authentication'], ['https://huggingface.co/WalidAlHassan/Find-Direction-Of-A-Bolt'], ['https://huggingface.co/WalidAlHassan/Virtual-Mouse'], ['https://huggingface.co/WalidAlHassan/ChatBot'], ['https://chatbot-with-gemini.streamlit'], ['https://huggingface.co/WalidAlHassan/ChatBot-Gemini'], ['https://huggingface.co/WalidAlHassan/Romero-ChatBot'], ['https://huggingface.co/WalidAlHassan/SCREW-APP'], ['https://huggingface.co/WalidAlHassan/Conveyor-Belt-Screw-Count'], ['https://walid.vercel'], ['https://www.linkedin.com/in/munsiwalidalhassannizhu'], ['https://www.facebook.com/whalidmunshi'], ['https://huggingface.co/WalidAlHassan'], ['https://github.com/walid3271']]\n","['https://www.linkedin.com/in/munsiwalidalhassannizhu', 'https://www.facebook.com/whalidmunshi', 'https://huggingface.co/WalidAlHassan', 'https://github.com/walid3271', 'https://huggingface.co/WalidAlHassan/Face-Detection-Using-URL', 'https://huggingface.co/WalidAlHassan/Floor-Object-Rooms-and-Bed-direction-Identification-according-to-Vastu-angle', 'https://huggingface.co/WalidAlHassan/GMP_Face_Authentication', 'https://huggingface.co/WalidAlHassan/Find-Direction-Of-A-Bolt', 'https://huggingface.co/WalidAlHassan/Virtual-Mouse', 'https://huggingface.co/WalidAlHassan/ChatBot', 'https://chatbot-with-gemini.streamlit', 'https://huggingface.co/WalidAlHassan/ChatBot-Gemini', 'https://huggingface.co/WalidAlHassan/Romero-ChatBot', 'https://huggingface.co/WalidAlHassan/SCREW-APP', 'https://huggingface.co/WalidAlHassan/Conveyor-Belt-Screw-Count', 'https://walid.vercel', 'https://www.linkedin.com/in/munsiwalidalhassannizhu', 'https://www.facebook.com/whalidmunshi', 'https://huggingface.co/WalidAlHassan', 'https://github.com/walid3271']\n"]}]},{"cell_type":"code","source":["import requests\n","from bs4 import BeautifulSoup\n","import pandas as pd\n","\n","url = \"http://quotes.toscrape.com/\"\n","headers = {\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36\"}\n","response = requests.get(url, headers)\n","# print(response.content)\n","print('Status: ',response)\n","soup = BeautifulSoup(response.text, \"html.parser\")\n","\n","quotes = soup.find_all(\"span\", attrs={\"class\":\"text\"})\n","authors = soup.find_all(\"small\", attrs={\"class\":\"author\"})\n","\n","qu = []\n","for quote, author in zip(quotes, authors):\n"," qu.append({\"Quote\": quote.text, \"Author\": author.text})\n","\n","csv_file = \"Quote.csv\"\n","df = pd.DataFrame(qu)\n","df.to_csv(csv_file, index=False, encoding=\"utf-8\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"qKQp6kpX7bja","executionInfo":{"status":"ok","timestamp":1734173627017,"user_tz":-360,"elapsed":1372,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"253cf8ec-5e14-41c1-e3b9-3323ff18a9d3"},"execution_count":8,"outputs":[{"output_type":"stream","name":"stdout","text":["Status: <Response [200]>\n"]}]},{"cell_type":"code","source":["df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":363},"id":"KdYnO-sH88YW","executionInfo":{"status":"ok","timestamp":1734173631548,"user_tz":-360,"elapsed":360,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"3699902c-bb7c-4791-8e1e-402ac7aa75cc"},"execution_count":9,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Quote Author\n","0 “The world as we have created it is a process ... Albert Einstein\n","1 “It is our choices, Harry, that show what we t... J.K. Rowling\n","2 “There are only two ways to live your life. On... Albert Einstein\n","3 “The person, be it gentleman or lady, who has ... Jane Austen\n","4 “Imperfection is beauty, madness is genius and... Marilyn Monroe\n","5 “Try not to become a man of success. Rather be... Albert Einstein\n","6 “It is better to be hated for what you are tha... André Gide\n","7 “I have not failed. I've just found 10,000 way... Thomas A. Edison\n","8 “A woman is like a tea bag; you never know how... Eleanor Roosevelt\n","9 “A day without sunshine is like, you know, nig... Steve Martin"],"text/html":["\n"," <div id=\"df-31329006-48d2-438d-a276-b0ff4c35bf04\" class=\"colab-df-container\">\n"," <div>\n","<style scoped>\n"," .dataframe tbody tr th:only-of-type {\n"," vertical-align: middle;\n"," }\n","\n"," .dataframe tbody tr th {\n"," vertical-align: top;\n"," }\n","\n"," .dataframe thead th {\n"," text-align: right;\n"," }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n"," <thead>\n"," <tr style=\"text-align: right;\">\n"," <th></th>\n"," <th>Quote</th>\n"," <th>Author</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>“The world as we have created it is a process ...</td>\n"," <td>Albert Einstein</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td>“It is our choices, Harry, that show what we t...</td>\n"," <td>J.K. Rowling</td>\n"," </tr>\n"," <tr>\n"," <th>2</th>\n"," <td>“There are only two ways to live your life. On...</td>\n"," <td>Albert Einstein</td>\n"," </tr>\n"," <tr>\n"," <th>3</th>\n"," <td>“The person, be it gentleman or lady, who has ...</td>\n"," <td>Jane Austen</td>\n"," </tr>\n"," <tr>\n"," <th>4</th>\n"," <td>“Imperfection is beauty, madness is genius and...</td>\n"," <td>Marilyn Monroe</td>\n"," </tr>\n"," <tr>\n"," <th>5</th>\n"," <td>“Try not to become a man of success. Rather be...</td>\n"," <td>Albert Einstein</td>\n"," </tr>\n"," <tr>\n"," <th>6</th>\n"," <td>“It is better to be hated for what you are tha...</td>\n"," <td>André Gide</td>\n"," </tr>\n"," <tr>\n"," <th>7</th>\n"," <td>“I have not failed. I've just found 10,000 way...</td>\n"," <td>Thomas A. Edison</td>\n"," </tr>\n"," <tr>\n"," <th>8</th>\n"," <td>“A woman is like a tea bag; you never know how...</td>\n"," <td>Eleanor Roosevelt</td>\n"," </tr>\n"," <tr>\n"," <th>9</th>\n"," <td>“A day without sunshine is like, you know, nig...</td>\n"," <td>Steve Martin</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>\n"," <div class=\"colab-df-buttons\">\n","\n"," <div class=\"colab-df-container\">\n"," <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-31329006-48d2-438d-a276-b0ff4c35bf04')\"\n"," title=\"Convert this dataframe to an interactive table.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n"," <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n"," </svg>\n"," </button>\n","\n"," <style>\n"," .colab-df-container {\n"," display:flex;\n"," gap: 12px;\n"," }\n","\n"," .colab-df-convert {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-convert:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," .colab-df-buttons div {\n"," margin-bottom: 4px;\n"," }\n","\n"," [theme=dark] .colab-df-convert {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-convert:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n","\n"," <script>\n"," const buttonEl =\n"," document.querySelector('#df-31329006-48d2-438d-a276-b0ff4c35bf04 button.colab-df-convert');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," async function convertToInteractive(key) {\n"," const element = document.querySelector('#df-31329006-48d2-438d-a276-b0ff4c35bf04');\n"," const dataTable =\n"," await google.colab.kernel.invokeFunction('convertToInteractive',\n"," [key], {});\n"," if (!dataTable) return;\n","\n"," const docLinkHtml = 'Like what you see? Visit the ' +\n"," '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n"," + ' to learn more about interactive tables.';\n"," element.innerHTML = '';\n"," dataTable['output_type'] = 'display_data';\n"," await google.colab.output.renderOutput(dataTable, element);\n"," const docLink = document.createElement('div');\n"," docLink.innerHTML = docLinkHtml;\n"," element.appendChild(docLink);\n"," }\n"," </script>\n"," </div>\n","\n","\n","<div id=\"df-208b0142-0db3-4a65-b815-3bb2f4fdca65\">\n"," <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-208b0142-0db3-4a65-b815-3bb2f4fdca65')\"\n"," title=\"Suggest charts\"\n"," style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <g>\n"," <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n"," </g>\n","</svg>\n"," </button>\n","\n","<style>\n"," .colab-df-quickchart {\n"," --bg-color: #E8F0FE;\n"," --fill-color: #1967D2;\n"," --hover-bg-color: #E2EBFA;\n"," --hover-fill-color: #174EA6;\n"," --disabled-fill-color: #AAA;\n"," --disabled-bg-color: #DDD;\n"," }\n","\n"," [theme=dark] .colab-df-quickchart {\n"," --bg-color: #3B4455;\n"," --fill-color: #D2E3FC;\n"," --hover-bg-color: #434B5C;\n"," --hover-fill-color: #FFFFFF;\n"," --disabled-bg-color: #3B4455;\n"," --disabled-fill-color: #666;\n"," }\n","\n"," .colab-df-quickchart {\n"," background-color: var(--bg-color);\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: var(--fill-color);\n"," height: 32px;\n"," padding: 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-quickchart:hover {\n"," background-color: var(--hover-bg-color);\n"," box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: var(--button-hover-fill-color);\n"," }\n","\n"," .colab-df-quickchart-complete:disabled,\n"," .colab-df-quickchart-complete:disabled:hover {\n"," background-color: var(--disabled-bg-color);\n"," fill: var(--disabled-fill-color);\n"," box-shadow: none;\n"," }\n","\n"," .colab-df-spinner {\n"," border: 2px solid var(--fill-color);\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," animation:\n"," spin 1s steps(1) infinite;\n"," }\n","\n"," @keyframes spin {\n"," 0% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," border-left-color: var(--fill-color);\n"," }\n"," 20% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 30% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," border-right-color: var(--fill-color);\n"," }\n"," 40% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 60% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," }\n"," 80% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-bottom-color: var(--fill-color);\n"," }\n"," 90% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," }\n"," }\n","</style>\n","\n"," <script>\n"," async function quickchart(key) {\n"," const quickchartButtonEl =\n"," document.querySelector('#' + key + ' button');\n"," quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n"," quickchartButtonEl.classList.add('colab-df-spinner');\n"," try {\n"," const charts = await google.colab.kernel.invokeFunction(\n"," 'suggestCharts', [key], {});\n"," } catch (error) {\n"," console.error('Error during call to suggestCharts:', error);\n"," }\n"," quickchartButtonEl.classList.remove('colab-df-spinner');\n"," quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n"," }\n"," (() => {\n"," let quickchartButtonEl =\n"," document.querySelector('#df-208b0142-0db3-4a65-b815-3bb2f4fdca65 button');\n"," quickchartButtonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n"," })();\n"," </script>\n","</div>\n","\n"," <div id=\"id_8b8b7829-b0f2-42f9-b61c-b7b8bc1629de\">\n"," <style>\n"," .colab-df-generate {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-generate:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," [theme=dark] .colab-df-generate {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-generate:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n"," <button class=\"colab-df-generate\" onclick=\"generateWithVariable('df')\"\n"," title=\"Generate code using this dataframe.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n"," </svg>\n"," </button>\n"," <script>\n"," (() => {\n"," const buttonEl =\n"," document.querySelector('#id_8b8b7829-b0f2-42f9-b61c-b7b8bc1629de button.colab-df-generate');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," buttonEl.onclick = () => {\n"," google.colab.notebook.generateWithVariable('df');\n"," }\n"," })();\n"," </script>\n"," </div>\n","\n"," </div>\n"," </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df","summary":"{\n \"name\": \"df\",\n \"rows\": 10,\n \"fields\": [\n {\n \"column\": \"Quote\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 10,\n \"samples\": [\n \"\\u201cA woman is like a tea bag; you never know how strong it is until it's in hot water.\\u201d\",\n \"\\u201cIt is our choices, Harry, that show what we truly are, far more than our abilities.\\u201d\",\n \"\\u201cTry not to become a man of success. Rather become a man of value.\\u201d\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Author\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 8,\n \"samples\": [\n \"J.K. Rowling\",\n \"Thomas A. Edison\",\n \"Albert Einstein\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":9}]}],"metadata":{"kernelspec":{"display_name":"pp","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.12.7"},"colab":{"provenance":[],"collapsed_sections":["pp3qeU7J5Bqb"]}},"nbformat":4,"nbformat_minor":0}
python course old/scraping2.ipynb ADDED
@@ -0,0 +1 @@
 
 
1
+ {"cells":[{"cell_type":"code","execution_count":30,"id":"63eac0a4","metadata":{"id":"63eac0a4","executionInfo":{"status":"ok","timestamp":1736407450159,"user_tz":-360,"elapsed":322,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"outputs":[],"source":["from bs4 import BeautifulSoup\n","import requests\n","import pandas as pd\n","import numpy as np"]},{"cell_type":"code","execution_count":31,"id":"8ca27ab4","metadata":{"id":"8ca27ab4","executionInfo":{"status":"ok","timestamp":1736407450513,"user_tz":-360,"elapsed":2,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}}},"outputs":[],"source":["# Function to extract Product Title\n","def get_title(soup):\n","\n"," try:\n"," # Outer Tag Object\n"," title_string = soup.find(\"span\", attrs={\"id\":'productTitle'}).text.strip()\n","\n"," except AttributeError:\n"," title_string = \"\"\n","\n"," return title_string\n","\n","# Function to extract Product Price\n","def get_price(soup):\n","\n"," try:\n"," price = soup.find(\"span\", attrs={'class':'a-price aok-align-center reinventPricePriceToPayMargin priceToPay'}).text.strip()\n","\n"," except AttributeError:\n"," price = \"\"\n","\n"," return price\n","\n","# Function to extract Product Rating\n","def get_rating(soup):\n","\n"," try:\n"," rating = soup.find(\"i\", attrs={'class':'a-icon a-icon-star a-star-4-5 cm-cr-review-stars-spacing-big'}).text.strip()\n","\n"," except AttributeError:\n"," try:\n"," rating = soup.find(\"span\", attrs={'class':'a-icon-alt'}).text.strip()\n"," except:\n"," rating = \"\"\n","\n"," return rating\n","\n","# Function to extract Number of User Reviews\n","def get_review_count(soup):\n"," try:\n"," review_count = soup.find(\"span\", attrs={'id':'acrCustomerReviewText'}).text.strip()\n","\n"," except AttributeError:\n"," review_count = \"\"\n","\n"," return review_count\n","\n","# Function to extract Availability Status\n","def get_availability(soup):\n"," try:\n"," available = soup.find(\"span\", attrs={'class':'a-size-medium a-color-success'}).text.strip()\n","\n"," except AttributeError:\n"," try:\n"," available = soup.find(\"span\", attrs={'class':'a-size-base a-color-price a-text-bold'}).text.strip()\n"," except AttributeError:\n"," available = \"Not Available\"\n","\n"," return available"]},{"cell_type":"code","execution_count":32,"id":"4713b996","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"4713b996","executionInfo":{"status":"ok","timestamp":1736407463579,"user_tz":-360,"elapsed":13067,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"d67af827-0090-4bd6-84a3-6e404e4df1c0"},"outputs":[{"output_type":"stream","name":"stdout","text":["webpage: <Response [200]>\n"]}],"source":["if __name__ == '__main__':\n"," # add your user agent\n"," HEADERS = {'User-Agent': '', 'Accept-Language': 'en-US, en;q=0.5'}\n","\n"," # The webpage URL\n"," URL = \"https://www.amazon.com/s?k=laptop&crid=O6A9159L6OOM&sprefix=lap%2Caps%2C300&ref=nb_sb_ss_ts-doa-p_1_3\"\n","\n"," # HTTP Request\n"," webpage = requests.get(URL, headers=HEADERS)\n"," print(\"webpage: \",webpage)\n","\n"," # Soup Object containing all data\n"," soup = BeautifulSoup(webpage.content, \"html.parser\") # Convert Byte to Html Formate\n","\n"," # Fetch links as List of Tag Objects\n"," links = soup.find_all(\"a\", attrs={'class':'a-link-normal s-no-outline'})\n"," # print(\"links: \",links)\n","\n"," # Store the links\n"," links_list = []\n","\n"," # Loop for extracting links from Tag Objects\n"," for link in links:\n"," links_list.append(link.get('href'))\n","\n"," d = {\"title\":[], \"price\":[], \"rating\":[], \"reviews\":[],\"availability\":[]}\n","\n"," # Loop for extracting product details from each link\n"," for link in links_list:\n"," new_webpage = requests.get(\"https://www.amazon.com\" + link, headers=HEADERS)\n","\n"," new_soup = BeautifulSoup(new_webpage.content, \"html.parser\")\n","\n"," # Function calls to display all necessary product information\n"," d['title'].append(get_title(new_soup))\n"," d['price'].append(get_price(new_soup))\n"," d['rating'].append(get_rating(new_soup))\n"," d['reviews'].append(get_review_count(new_soup))\n"," d['availability'].append(get_availability(new_soup))\n","\n","\n"," amazon_df = pd.DataFrame.from_dict(d)\n"," amazon_df.to_csv(\"amazon_data.csv\", header=True, index=False)"]},{"cell_type":"code","execution_count":33,"id":"db08fbaf","metadata":{"colab":{"base_uri":"https://localhost:8080/","height":551},"id":"db08fbaf","executionInfo":{"status":"ok","timestamp":1736407463579,"user_tz":-360,"elapsed":5,"user":{"displayName":"44-271-Munsi Walid Al Hassan Nizhu","userId":"16216461530557409787"}},"outputId":"c6bc2f33-7779-434f-cae2-c640ea2b3789"},"outputs":[{"output_type":"execute_result","data":{"text/plain":[" title price \\\n","0 HP 14 Laptop, Intel Celeron N4020, 4 GB RAM, 6... \n","1 \n","2 \n","3 \n","4 Lenovo Essential IdeaPad • 36GB RAM • 1.5TB St... \n","5 \n","6 ACEMAGIC Laptop,15.6In Windows 11 Laptop Compu... \n","7 \n","8 HP 15.6\" Laptop, 32GB RAM 1TB SSD | FHD Busine... \n","9 \n","10 \n","11 ASUS Chromebook CM14 Laptop, 14\" HD Anti-Glare... \n","12 HP Newest 14\" LED Business Laptop Computer, 16... \n","13 ApoloSign 15.6\" Full HD Laptop, 12GB RAM, 512G... \n","14 HP 14\" Laptop, 8GB DDR4 RAM, 64GB eMMC, Silver... \n","15 HP 17 Laptop, 17.3\" HD+ Touchscreen Display, 1... $903.99 \n","\n"," rating reviews availability \n","0 4.0 out of 5 stars (2,058) Not Available \n","1 Not Available \n","2 Not Available \n","3 Not Available \n","4 4.2 out of 5 stars (56) Not Available \n","5 Not Available \n","6 4.3 out of 5 stars (14) Not Available \n","7 Not Available \n","8 4.8 out of 5 stars (7) Not Available \n","9 Not Available \n","10 Not Available \n","11 4.2 out of 5 stars (1,169) Not Available \n","12 4.1 out of 5 stars (93) Not Available \n","13 5.0 out of 5 stars (8) Not Available \n","14 4.0 out of 5 stars (1,908) Not Available \n","15 4.2 out of 5 stars 453 ratings In Stock "],"text/html":["\n"," <div id=\"df-458407f3-c7b0-41eb-b317-ff08a2ec7ff6\" class=\"colab-df-container\">\n"," <div>\n","<style scoped>\n"," .dataframe tbody tr th:only-of-type {\n"," vertical-align: middle;\n"," }\n","\n"," .dataframe tbody tr th {\n"," vertical-align: top;\n"," }\n","\n"," .dataframe thead th {\n"," text-align: right;\n"," }\n","</style>\n","<table border=\"1\" class=\"dataframe\">\n"," <thead>\n"," <tr style=\"text-align: right;\">\n"," <th></th>\n"," <th>title</th>\n"," <th>price</th>\n"," <th>rating</th>\n"," <th>reviews</th>\n"," <th>availability</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>HP 14 Laptop, Intel Celeron N4020, 4 GB RAM, 6...</td>\n"," <td></td>\n"," <td>4.0 out of 5 stars</td>\n"," <td>(2,058)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>2</th>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>3</th>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>4</th>\n"," <td>Lenovo Essential IdeaPad • 36GB RAM • 1.5TB St...</td>\n"," <td></td>\n"," <td>4.2 out of 5 stars</td>\n"," <td>(56)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>5</th>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>6</th>\n"," <td>ACEMAGIC Laptop,15.6In Windows 11 Laptop Compu...</td>\n"," <td></td>\n"," <td>4.3 out of 5 stars</td>\n"," <td>(14)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>7</th>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>8</th>\n"," <td>HP 15.6\" Laptop, 32GB RAM 1TB SSD | FHD Busine...</td>\n"," <td></td>\n"," <td>4.8 out of 5 stars</td>\n"," <td>(7)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>9</th>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>10</th>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td></td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>11</th>\n"," <td>ASUS Chromebook CM14 Laptop, 14\" HD Anti-Glare...</td>\n"," <td></td>\n"," <td>4.2 out of 5 stars</td>\n"," <td>(1,169)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>12</th>\n"," <td>HP Newest 14\" LED Business Laptop Computer, 16...</td>\n"," <td></td>\n"," <td>4.1 out of 5 stars</td>\n"," <td>(93)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>13</th>\n"," <td>ApoloSign 15.6\" Full HD Laptop, 12GB RAM, 512G...</td>\n"," <td></td>\n"," <td>5.0 out of 5 stars</td>\n"," <td>(8)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>14</th>\n"," <td>HP 14\" Laptop, 8GB DDR4 RAM, 64GB eMMC, Silver...</td>\n"," <td></td>\n"," <td>4.0 out of 5 stars</td>\n"," <td>(1,908)</td>\n"," <td>Not Available</td>\n"," </tr>\n"," <tr>\n"," <th>15</th>\n"," <td>HP 17 Laptop, 17.3\" HD+ Touchscreen Display, 1...</td>\n"," <td>$903.99</td>\n"," <td>4.2 out of 5 stars</td>\n"," <td>453 ratings</td>\n"," <td>In Stock</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>\n"," <div class=\"colab-df-buttons\">\n","\n"," <div class=\"colab-df-container\">\n"," <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-458407f3-c7b0-41eb-b317-ff08a2ec7ff6')\"\n"," title=\"Convert this dataframe to an interactive table.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n"," <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n"," </svg>\n"," </button>\n","\n"," <style>\n"," .colab-df-container {\n"," display:flex;\n"," gap: 12px;\n"," }\n","\n"," .colab-df-convert {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-convert:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," .colab-df-buttons div {\n"," margin-bottom: 4px;\n"," }\n","\n"," [theme=dark] .colab-df-convert {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-convert:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n","\n"," <script>\n"," const buttonEl =\n"," document.querySelector('#df-458407f3-c7b0-41eb-b317-ff08a2ec7ff6 button.colab-df-convert');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," async function convertToInteractive(key) {\n"," const element = document.querySelector('#df-458407f3-c7b0-41eb-b317-ff08a2ec7ff6');\n"," const dataTable =\n"," await google.colab.kernel.invokeFunction('convertToInteractive',\n"," [key], {});\n"," if (!dataTable) return;\n","\n"," const docLinkHtml = 'Like what you see? Visit the ' +\n"," '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n"," + ' to learn more about interactive tables.';\n"," element.innerHTML = '';\n"," dataTable['output_type'] = 'display_data';\n"," await google.colab.output.renderOutput(dataTable, element);\n"," const docLink = document.createElement('div');\n"," docLink.innerHTML = docLinkHtml;\n"," element.appendChild(docLink);\n"," }\n"," </script>\n"," </div>\n","\n","\n","<div id=\"df-d199c4a0-6cf4-4a90-871c-a553638b1f2e\">\n"," <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-d199c4a0-6cf4-4a90-871c-a553638b1f2e')\"\n"," title=\"Suggest charts\"\n"," style=\"display:none;\">\n","\n","<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <g>\n"," <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n"," </g>\n","</svg>\n"," </button>\n","\n","<style>\n"," .colab-df-quickchart {\n"," --bg-color: #E8F0FE;\n"," --fill-color: #1967D2;\n"," --hover-bg-color: #E2EBFA;\n"," --hover-fill-color: #174EA6;\n"," --disabled-fill-color: #AAA;\n"," --disabled-bg-color: #DDD;\n"," }\n","\n"," [theme=dark] .colab-df-quickchart {\n"," --bg-color: #3B4455;\n"," --fill-color: #D2E3FC;\n"," --hover-bg-color: #434B5C;\n"," --hover-fill-color: #FFFFFF;\n"," --disabled-bg-color: #3B4455;\n"," --disabled-fill-color: #666;\n"," }\n","\n"," .colab-df-quickchart {\n"," background-color: var(--bg-color);\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: var(--fill-color);\n"," height: 32px;\n"," padding: 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-quickchart:hover {\n"," background-color: var(--hover-bg-color);\n"," box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: var(--button-hover-fill-color);\n"," }\n","\n"," .colab-df-quickchart-complete:disabled,\n"," .colab-df-quickchart-complete:disabled:hover {\n"," background-color: var(--disabled-bg-color);\n"," fill: var(--disabled-fill-color);\n"," box-shadow: none;\n"," }\n","\n"," .colab-df-spinner {\n"," border: 2px solid var(--fill-color);\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," animation:\n"," spin 1s steps(1) infinite;\n"," }\n","\n"," @keyframes spin {\n"," 0% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," border-left-color: var(--fill-color);\n"," }\n"," 20% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 30% {\n"," border-color: transparent;\n"," border-left-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," border-right-color: var(--fill-color);\n"," }\n"," 40% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-top-color: var(--fill-color);\n"," }\n"," 60% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," }\n"," 80% {\n"," border-color: transparent;\n"," border-right-color: var(--fill-color);\n"," border-bottom-color: var(--fill-color);\n"," }\n"," 90% {\n"," border-color: transparent;\n"," border-bottom-color: var(--fill-color);\n"," }\n"," }\n","</style>\n","\n"," <script>\n"," async function quickchart(key) {\n"," const quickchartButtonEl =\n"," document.querySelector('#' + key + ' button');\n"," quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n"," quickchartButtonEl.classList.add('colab-df-spinner');\n"," try {\n"," const charts = await google.colab.kernel.invokeFunction(\n"," 'suggestCharts', [key], {});\n"," } catch (error) {\n"," console.error('Error during call to suggestCharts:', error);\n"," }\n"," quickchartButtonEl.classList.remove('colab-df-spinner');\n"," quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n"," }\n"," (() => {\n"," let quickchartButtonEl =\n"," document.querySelector('#df-d199c4a0-6cf4-4a90-871c-a553638b1f2e button');\n"," quickchartButtonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n"," })();\n"," </script>\n","</div>\n","\n"," <div id=\"id_5e413bc3-b678-4760-a730-287811b94b53\">\n"," <style>\n"," .colab-df-generate {\n"," background-color: #E8F0FE;\n"," border: none;\n"," border-radius: 50%;\n"," cursor: pointer;\n"," display: none;\n"," fill: #1967D2;\n"," height: 32px;\n"," padding: 0 0 0 0;\n"," width: 32px;\n"," }\n","\n"," .colab-df-generate:hover {\n"," background-color: #E2EBFA;\n"," box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n"," fill: #174EA6;\n"," }\n","\n"," [theme=dark] .colab-df-generate {\n"," background-color: #3B4455;\n"," fill: #D2E3FC;\n"," }\n","\n"," [theme=dark] .colab-df-generate:hover {\n"," background-color: #434B5C;\n"," box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n"," filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n"," fill: #FFFFFF;\n"," }\n"," </style>\n"," <button class=\"colab-df-generate\" onclick=\"generateWithVariable('amazon_df')\"\n"," title=\"Generate code using this dataframe.\"\n"," style=\"display:none;\">\n","\n"," <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n"," width=\"24px\">\n"," <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n"," </svg>\n"," </button>\n"," <script>\n"," (() => {\n"," const buttonEl =\n"," document.querySelector('#id_5e413bc3-b678-4760-a730-287811b94b53 button.colab-df-generate');\n"," buttonEl.style.display =\n"," google.colab.kernel.accessAllowed ? 'block' : 'none';\n","\n"," buttonEl.onclick = () => {\n"," google.colab.notebook.generateWithVariable('amazon_df');\n"," }\n"," })();\n"," </script>\n"," </div>\n","\n"," </div>\n"," </div>\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"amazon_df","summary":"{\n \"name\": \"amazon_df\",\n \"rows\": 16,\n \"fields\": [\n {\n \"column\": \"title\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 10,\n \"samples\": [\n \"HP 14\\\" Laptop, 8GB DDR4 RAM, 64GB eMMC, Silver | Portable, Student and Business, HD Display, Intel Quad-Core N4120, 1 Year Office 365, Webcam, RJ-45, HDMI, Wi-Fi, Windows 11 Home\",\n \"\",\n \"ASUS Chromebook CM14 Laptop, 14\\\" HD Anti-Glare Display (1366x768), MediaTek Kompanio 520, 4GB RAM, 64GB eMMC, ChromeOS, Gray, CM1402CM2A-DS44, Gravity Grey\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"price\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"$903.99\",\n \"\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"rating\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"4.0 out of 5 stars\",\n \"\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"reviews\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 10,\n \"samples\": [\n \"(1,908)\",\n \"\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"availability\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 2,\n \"samples\": [\n \"In Stock\",\n \"Not Available\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":33}],"source":["amazon_df"]}],"metadata":{"kernelspec":{"display_name":"pp","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.12.7"},"colab":{"provenance":[]}},"nbformat":4,"nbformat_minor":5}