In Python, a module is a file that contains functions, variables, and classes that we can reuse in our programs. Modules help us organize code and make it more readable and efficient. 📌 Types of Python Modules: 1️⃣ Built-in Modules – Already available in Python Example: math – Mathematical operations random – Generate random numbers datetime – Work with date and time 2️⃣ User-defined Modules – Created by the user to reuse code 3️⃣ Third-party Modules – Installed using pip Example: numpy – Numerical calculations pandas – Data analysis # Python Program Demonstrating int, float, complex, and string Together # Function to perform integer operations def integer_operations(a, b): print("\n--- Integer Operations ---") print("Addition:", a + b) print("Subtraction:", a - b) print("Multiplication:", a * b) print("Division:", a / b) print("Floor Division:", a // b) print("Modulus:", a % b) print("Power:", a ** b) # Function to perform float operations def float_operations(x, y): print("\n--- Float Operations ---") print("Addition:", x + y) print("Subtraction:", x - y) print("Multiplication:", x * y) print("Division:", x / y) print("Rounded Value of First Number:", round(x, 2)) # Function to perform complex number operations def complex_operations(c1, c2): print("\n--- Complex Number Operations ---") print("Addition:", c1 + c2) print("Subtraction:", c1 - c2) print("Multiplication:", c1 * c2) print("Division:", c1 / c2) print("Magnitude of First Complex Number:", abs(c1)) # Function to perform string operations def string_operations(s1, s2): print("\n--- String Operations ---") print("Concatenation:", s1 + " " + s2) print("Uppercase:", s1.upper()) print("Lowercase:", s2.lower()) print("Length of First String:", len(s1)) print("Reversed First String:", s1[::-1]) print("Replace characters:", s1.replace("a", "@")) # Main Program def main(): print("===== Python Data Types Demonstration =====") # Integer input a = int(input("Enter first integer: ")) b = int(input("Enter second integer: ")) integer_operations(a, b) # Float input x = float(input("\nEnter first float number: ")) y = float(input("Enter second float number: ")) float_operations(x, y) # Complex input print("\nEnter complex numbers in form a+bj") c1 = complex(input("Enter first complex number: ")) c2 = complex(input("Enter second complex number: ")) complex_operations(c1, c2) # String input s1 = input("\nEnter first string: ") s2 = input("Enter second string: ") string_operations(s1, s2) print("\n===== Program Completed Successfully =====") # Run the program if __name__ == "__main__": main() #Python #Programming #Coding #LearnPython #Developer #TechSkills
Python Modules and Data Types Explained
More Relevant Posts
-
Data Structures in Python (Types and Examples Explained) Data structures in Python help organize and store data efficiently in computer memory. They improve performance by making tasks like searching, sorting, and accessing data faster. Common examples include lists, tuples, sets, and dictionaries. Advanced structures like stacks, queues, trees, and graphs help developers manage complex data and build efficient applications. Read more here: https://lnkd.in/ggQg-Giy. #python #datastructures #pythonprogramming #computerscience #TechLearning #softwaredevelopment #ProgrammingBasics #igmguru
To view or add a comment, sign in
-
### Mastering Strings in Python: Strings are fundamental in Python for handling text data, and understanding how to effectively manipulate and format them is crucial. I recently explored various powerful techniques for working with strings, including: 1. Formatted Strings A. Old Style Formatting (%): A traditional method for basic string substitutions. Example: print("My name is %s and I am %d" % (name, age)) B. str.format() Method: Offers more flexibility and control over string interpolation, allowing for positional, keyword, and even indexed arguments. Example: print("My name is {} and I am {}".format(name, age)) C. f-strings (Formatted String Literals): Introduced in Python 3.6, f-strings are the most modern, concise, and efficient way to embed expressions and variables directly within string literals. They significantly improve readability and performance. Example: print(f"My name is {name} and I am {age}") 2. Escape Characters: Special characters like n (newline) and t (tab), preceded by a backslash, enable precise control over string output, handling special characters and formatting within a string. Examples: print("This is "keyword" double quotes") (to print double quotes within a double-quoted string) print("HellonWorld") (for a new line) print("HellotWorld") (for a tab space) 3. String Operators: A. Concatenation (+): Joins strings together. Example: "Hello" + "Python" results in "HelloPython" B. Repetition (``)*: Repeats a string multiple times. Example: "Hello" * 2 results in "HelloHello" C. in and not in: Useful for checking the presence or absence of substrings, essential for conditional logic and data validation. Example: 'H' in "Hello" returns True D. Raw Strings (r): Particularly useful when dealing with paths or regular expressions, preventing backslashes from being interpreted as escape characters. Example: print(r"HellonWorld") will print "HellonWorld" literally, not with a newline. These techniques are essential for any Python developer looking to produce clean, dynamic, and well-structured text output. #Python #Strings #PythonTutorial #Programming #SoftwareDevelopment #TechSkills
To view or add a comment, sign in
-
Day 6: Built-in Functions — Python’s Essential Toolkit 🧰 Every language has a set of "pre-installed" tools. In Python, these are Built-in Functions. You don't need to import anything to use them—they are always there to help you handle data. Today, we are breaking down the most common ones you’ll use in every single script. 1. The Communicators: print() & input() These are your primary ways to talk to your program. print(): Displays data to the console. You can pass multiple items separated by commas: print("Total:", 100). input(): Pauses the program and waits for the user to type something. 💡 The Engineering Lens: Remember that input() always returns a string. If you want to do math with a user's input, you must convert it first! 2. The Measured: len() The Concept: Short for "length." It counts the number of items in a collection (like a string, list, or dictionary). Example: len("Python") returns 6. 💡 The Engineering Lens: len() is incredibly fast ($O(1)$ complexity) because Python keeps track of the size of objects behind the scenes. It doesn't actually "count" the items one by one when you call it. 3. The Transformers: int(), float(), & str() These are used for Type Casting—changing data from one type to another. int(): Converts a value to an integer (whole number). float(): Converts a value to a decimal. str(): Converts a value to a string so you can combine it with other text. 💡 The Engineering Lens: In production, casting is "dangerous." If you try int("abc"), your program will crash. Always ensure your data looks like a number before casting! 4. The Inspector: type() The Concept: Not sure what kind of data a variable is holding? type() will tell you exactly what it is (e.g., <class 'int'>). 💡 The Engineering Lens: While type() is great for quick debugging, we often use isinstance(variable, type) in larger projects because it’s more flexible when dealing with advanced coding patterns. #Python #SoftwareEngineering #CodingBasics #Programming #LearnToCode #CleanCode #TechCommunity #PythonForBeginners
To view or add a comment, sign in
-
🚀 Python for Data Analyst- Advanced Set Concepts in Python (Part 3)-(Post 9) These are small concepts individually, but together they make sets very powerful in real-world Python work. 1️⃣ issubset() Checks whether all elements of one set are present in another. s1 = {1, 2, 3, 4, 5} s2 = {4, 5} print(s2.issubset(s1)) Output: True More examples: A = {1, 2, 3} B = {1, 2, 3, 4, 5} C = {1, 2, 4, 5} print(A.issubset(B)) # True print(B.issubset(A)) # False print(A.issubset(C)) # False print(C.issubset(B)) # True 2️⃣ issuperset() Checks whether one set contains all elements of another. A = {4, 1, 3, 5} B = {6, 0, 4, 1, 5, 3} print(A.issuperset(B)) print(B.issuperset(A)) Output: False True 3️⃣ isdisjoint() Checks whether two sets have no common elements. s1 = {1, 2, 3} s2 = {4, 5, 6} print(s1.isdisjoint(s2)) Output: True If there is at least one common value: set1 = {2, 4, 5, 6} set3 = {1, 2} print(set1.isdisjoint(set3)) Output: False It also works with: list tuple dictionary string Important: For dictionaries, only keys are checked. 4️⃣ copy() Creates a shallow copy of a set. set1 = {1, 2, 3, 4} set2 = set1.copy() print(set2) Using copy() is useful because direct assignment: set2 = set1 makes both variables point to the same set. With copy(), modifications in the copied set do not affect the original: first = {'g', 'e', 'k', 's'} second = first.copy() second.add('f') print(first) print(second) 5️⃣ frozenset A frozenset is like a set, but immutable. Once created: cannot add cannot remove cannot update Example: fs = frozenset([1, 2, 3, 4, 5]) print(fs) Output: frozenset({1, 2, 3, 4, 5}) Useful when you need a set-like structure that should not change. 6️⃣ Typecasting into Sets The set() constructor can convert: list tuple string range dictionary Examples: print(set([1, 2, 2, 3])) print(set((1, 1, 2, 3))) print(set("GeeksforGeeks")) print(set(range(3, 8))) print(set({'x': 1, 'y': 2})) Important: When converting a dictionary to a set, only keys are included. 7️⃣ set() Function Summary Syntax: set(iterable) removes duplicates automatically creates empty set if no argument is passed accepts only iterables Examples: set() set([4, 5, 5, 6]) set((1, 1, 2, 3)) set("hello") 8️⃣ min() and max() with Sets You can find minimum and maximum values in a set. s1 = {4, 12, 10, 9, 13} print(min(s1)) print(max(s1)) Output: 4 13 ⚠️ For heterogeneous sets like {"Geeks", 11}, min() and max() raise TypeError because Python cannot compare different types. 9️⃣ Using sorted() with Sets sorted() works on any iterable, including sets. It returns a new sorted list and does not modify the original set. s = {5, 3, 9, 1, 7} sorted_s = sorted(s) print(sorted_s) Output: [1, 3, 5, 7, 9] Descending order print(sorted(s, reverse=True)) Sorting strings in a set A = {'ab', 'ba', 'cd', 'dz'} print(sorted(A)) #Python #PythonLearning #DataAnalytics #Sets #LearningInPublic
To view or add a comment, sign in
-
🚀 I Learned Two Python Concepts Today That Instantly Made My Code Better Today I practiced two important Python concepts: • While Loops • Format Specifiers (Python f-string formatting) Both are heavily used in real programs for input validation and clean output formatting. 🔁 1. While Loop — Repeating Code Until a Condition Changes A while loop repeatedly executes code as long as a condition is true. age = int(input("Enter your age: ")) while age < 0: print("Age cannot be negative") age = int(input("Enter your age: ")) print(f"You are {age} years old") 📌 What Happens 1️⃣ User enters age. 2️⃣ If the value is negative, an error appears. 3️⃣ The program asks again until a valid value is entered. 🌍 Real‑world uses • Input validation • Login retry systems • Game loops • Menu programs For example, an ATM keeps asking for a PIN until it is correct. 🔄 2. Infinite Loop + Break (Common Pattern) while True: principal = float(input("Enter principal amount: ")) if principal < 0: print("Principal cannot be negative") else: break 🧠 Logic • while True creates a continuous loop • Invalid input → error message • Valid input → break stops the loop This pattern is widely used for reliable user input handling. 🎯 3. Format Specifiers — Clean Output Formatting Python f-strings allow precise formatting of numbers. General syntax {value:flags} Example value price = 3000.1459 🔢 Round to specific decimals print(f"{price:.2f}") Output 3000.15 .2f → round to 2 decimal places (very common in finance). 0️⃣ Zero padding / fixed width print(f"{price:010}") Example 0003000.1459 Useful for IDs, invoices, or structured tables. 📊 Number alignment Left {value:<10} Right {value:>10} Center {value:^10} Helpful when printing tables or reports. 💰 Sign and comma formatting print(f"{price:+,.2f}") Output +3,000.15 Meaning: • + show sign • , thousands separator • .2f two decimals Common in financial dashboards and reports. 🧮 Example: Compound Interest total = principal * pow((1 + rate/100), time) print(f"Balance after {time} years: ${total:.2f}") This demonstrates: • while-loop validation • calculation logic • formatted output 📚 What I Practiced Today • While loops • Infinite loop pattern • Input validation • Python format specifiers • Clean numeric output Programming is about controlling logic and handling real data correctly. 🔗 Code Repository GitHub: https://lnkd.in/dFtwyqEw #python #pythonlearning #codingjourney #programming #softwaredeveloper #learnpython #developers #100daysofcode #computerscience
To view or add a comment, sign in
-
-
What Actually Happens When You Click "Install Python" ? What is Virtual environment ? So, you installed Python, what really happened? It’s not just an icon, Python installed a complete toolkit to help you start coding. 1. What’s inside? #The Brain (python.exe) This runs your code. Whatever you write, it executes it. #The Library (Lib folder) This contains ready-made modules (built-in packages), such as: math → for calculations datetime → for date and time os → to interact with your system sys → to work with Python system settings random → to generate random numbers You don’t need to build these from scratch. #The Tools (Scripts folder) This includes tools like: pip → to install external packages pip3 → version-specific installer easy_install (in some setups) #With pip, you can install powerful libraries like: numpy → for numerical computing pandas → for data analysis matplotlib → for visualization scikit-learn → for machine learning #What is a Virtual Environment (venv)? A virtual environment (venv) is a built-in module in Python that allows you to create isolated environments for different projects. Each environment keeps its own dependencies (libraries and packages), separate from the main Python installation on your system. This means your project does not rely on globally installed packages. Instead, it has its own independent set of dependencies, avoiding conflicts between projects. If you don’t use a virtual environment and two projects require different versions of the same library, they can conflict and cause errors. #Example: Imagine you’re working on two different art projects: Project A needs blue paint Project B needs red paint If you mix both colors in one bucket, you get a mess. A virtual environment is like giving each project its own separate bucket, so everything stays clean and organized. In Python, a Virtual Environment (venv) is like having a separate bucket for every project. It keeps your projects isolated so that a change in one doesn't break the other. 3. The Package Managers: Anaconda vs. UV Sometimes, you need a manager to help you organize all your “buckets” (virtual environments) and tools. #Anaconda: Think of this as the “Luxury SUV” of Python. It comes pre-installed with almost everything a data scientist needs, including libraries like NumPy, Pandas, and Jupyter Notebook. It’s a bit heavy, but very reliable and beginner-friendly. #UV: This is the “Formula 1 Car.” It is extremely fast and designed for modern developers who want quick setup and performance. It’s lightweight, newer, and built for speed and efficiency. #The Bottom Line Python is more than just a programming language, it’s a complete toolkit. By using virtual environments (venv) and choosing the right package manager, you’ll spend less time dealing with dependency issues and more time actually building and coding your projects. #AIEngineering #PythonBeginner #Coding #TechMadeEasy #LearnToCode #PythonTips
To view or add a comment, sign in
-
-
🔥 Part-1: Tuples in Python (Complete Guide) 🔥 Tuples are one of the most important data structures in Python — simple, fast, and immutable! Let’s break it down in an easy and practical way 👇 📌 What is a Tuple? 👉 An ordered, immutable collection 👉 Allows duplicate values 👉 Written using parentheses () Example: fruits = ("apple", "orange", "cherry", "apple") print(fruits) # Output: ('apple', 'orange', 'cherry', 'apple') ✨ Ways to Create Tuples 🔹 1. Using Parentheses fruits = ("apple", "orange", "cherry") 🔹 2. Without Parentheses (Tuple Packing) numbers = 1, 2, 3, 4 print(type(numbers)) # Output: <class 'tuple'> 🔹 3. Single Element Tuple (Important ⚠️) single_tuple = ("apple",) print(type(single_tuple)) # Output: <class 'tuple'> 👉 Without comma, it becomes a string! 🎯 Accessing Elements 🔹 Indexing colors = ("red", "green", "blue", "orange") print(colors[0]) # red print(colors[-1]) # orange 🔹 Slicing nums = (10, 20, 30, 40, 50) print(nums[1:4]) # (20, 30, 40) ⚙️ Tuple Operations 🔹 Concatenation (+) print((1, 2) + (3, 4)) # (1, 2, 3, 4) 🔹 Repetition (*) print(("apple",) * 3) # ('apple', 'apple', 'apple') 🔁 Iteration in Tuple 🔹 Using for loop colors = ("red", "green", "blue") for color in colors: print(color) 🔹 Using while loop fruits = ("apple", "mango", "cherry") i = 0 while i < len(fruits): print(fruits[i]) i += 1 🛠️ Useful Methods & Functions 🔹 count() nums = (1, 2, 3, 2, 2) print(nums.count(2)) # 3 🔹 index() colors = ("red", "green", "blue") print(colors.index("green")) # 1 🔹 sorted() (returns list) nums = (3, 1, 2) print(sorted(nums)) # [1, 2, 3] 🔹 Built-in Functions numbers = (10, 20, 30, 40) print(len(numbers)) # 4 print(sum(numbers)) # 100 print(min(numbers)) # 10 print(max(numbers)) # 40 🎁 Packing & Unpacking 🔹 Unpacking coordinates = (10, 20, 30) x, y, z = coordinates print(y) # 20 🔹 Packing a = "Madhav" b = 21 c = "Engineer" tuple_pack = (a, b, c) print(tuple_pack) # ('Madhav', 21, 'Engineer') 🚀 Key Takeaways ✔ Tuples are immutable (cannot change) ✔ Faster than lists ✔ Useful for fixed data & security ✔ Supports indexing, slicing & iteration 💬 Stay tuned for Part-2 (Advanced Tuple Concepts) #Python #PythonProgramming #DataStructures #CodingTutorial #DataScience #SoftwareDevelopment
To view or add a comment, sign in
-
💡 *Mastering Python File Handling! 📂* Just explored Python’s file handling modes — `r`, `w`, `a`, `r+`, `w+`, and `a+`! 🚀 🔹 *`r` (Read)*: Safe for viewing files. 🔹 *`w` (Write)*: Overwrites or creates new. 🔹 *`a` (Append)*: Adds data without deleting existing content. 🔹 *`r+` (Read + Write)*: Read first, then modify. 🔹 *`w+` (Write + Read)*: Clears content, write first, then read. 🔹 *`a+` (Append + Read)*: Append data and read from start (use `seek(0)`). 👉 *Why it matters*: Knowing these modes prevents data loss and makes file operations efficient! 💻 #Python #FileHandling #Programming #LearningInPublic #DataScience #CodingTips G.R NARENDRA REDDY Global Quest Technologies Python programs demonstrating different *file handling modes*. Here’s a concise explanation of each mode and what the programs do: 1. `r` Mode (Read) - Opens a file for *reading* only. - The file must exist; otherwise, an error occurs. - `file.read()` retrieves the entire content. - Example output: displays the text in `demo.txt`. 2. `w` Mode (Write) - Opens a file for *writing*. - If the file exists, its content is *truncated* (deleted). - If it doesn’t exist, a new file is created. - `file.write()` inserts the given string into the file. 3. `a` Mode (Append) - Opens a file for *appending* data. - New data is added to the end of the existing content. - If the file doesn’t exist, it’s created. - `file.write()` adds the specified text to the file. 4. `r+` Mode (Read + Write) - Opens a file for both *reading* and writing. - The file pointer starts at the beginning. - Writing overwrites existing data at the current position. - Example reads the file, then appends new text using `write()`. 5. `w+` Mode (Write + Read) - Opens a file for *writing* and *reading*. - Truncates existing content (like `w`). - After writing, you can use `seek(0)` to move the pointer to the start and read the new data. 6. `a+` Mode (Append + Read) - Opens a file for *appending* and reading. - New writes are added at the end, and you can read existing content. - The file pointer is at the end for writing; use `seek(0)` to read from the start. Key takeaway: The mode decides how Python interacts with a file—whether to read, overwrite, or append data, and whether the file must exist. Always close the file with `file.close()` or use `with open()` for automatic handling.
To view or add a comment, sign in
-
A few days ago I posted about Python’s __𝙨𝙡𝙤𝙩𝙨__ and how it can reduce memory usage by 40–50% by removing the __𝙙𝙞𝙘𝙩__ overhead. But there’s an even cleaner way to use it. Starting Python 3.10, you can combine __𝙨𝙡𝙤𝙩𝙨__ with dataclasses. And Python does all the work for you. 🧠 𝗧𝗵𝗲 𝗜𝗱𝗲𝗮 Normally: • @𝗱𝗮𝘁𝗮𝗰𝗹𝗮𝘀𝘀 → removes boilerplate (__𝙞𝙣𝙞𝙩__, __𝙧𝙚𝙥𝙧__, __𝙚𝙦__) • __𝘀𝗹𝗼𝘁𝘀__ → removes __𝙙𝙞𝙘𝙩__, saving memory In Python 3.10+, you can simply write: @𝙙𝙖𝙩𝙖𝙘𝙡𝙖𝙨𝙨(𝙨𝙡𝙤𝙩𝙨=𝙏𝙧𝙪𝙚) Python will automatically generate __𝙨𝙡𝙤𝙩𝙨__ from the dataclass fields. So you get: ✅ Clean dataclass syntax ✅ No dictionary overhead ✅ Faster attribute access ✅ Much lower memory usage 📊 𝗪𝗵𝘆 𝗧𝗵𝗶𝘀 𝗠𝗮𝘁𝘁𝗲𝗿𝘀 𝗮𝘁 𝗦𝗰𝗮𝗹𝗲 Every regular Python object stores attributes inside a dictionary (__𝙙𝙞𝙘𝙩__). That flexibility costs extra memory. With slots, Python switches to a fixed memory layout. Now imagine a system storing 1 million objects in memory: • analytics events • ML datapoints • API responses • background job records Saving ~120 bytes per object suddenly becomes: 120 bytes × 1,000,000 = ~120 MB saved Just from one design decision. 💡 𝗘𝘅𝗮𝗺𝗽𝗹𝗲 ```python import sys from dataclasses import dataclass # ❌ Regular dataclass — has __dict__ @dataclass class EventRegular: user_id: int challenge_id: int score: float timestamp: str # ✅ Slotted dataclass — no __dict__ @dataclass(slots=True) class EventSlotted: user_id: int challenge_id: int score: float timestamp: str e1 = EventRegular(629, 42, 95.5, "2026-03-06") e2 = EventSlotted(629, 42, 95.5, "2026-03-06") print(sys.getsizeof(e1)) # ~184 bytes print(sys.getsizeof(e2)) # ~56 bytes 🚀 print(hasattr(e1, "__dict__")) # True print(hasattr(e2, "__dict__")) # False ``` That’s roughly 3× smaller objects. 🔥 𝗘𝘃𝗲𝗻 𝗕𝗲𝘁𝘁𝗲𝗿: 𝗦𝘁𝗮𝗰𝗸 𝗗𝗮𝘁𝗮𝗰𝗹𝗮𝘀𝘀 𝗙𝗲𝗮𝘁𝘂𝗿𝗲𝘀 You can combine multiple dataclass features together: @dataclass(slots=True, frozen=True, order=True) class LeaderboardEntry: score: float user_id: int username: str Now you get: ✅ Slots → minimal memory usage ✅ Frozen → immutable objects ✅ Order → automatically sortable objects All with almost zero boilerplate. 🧠 𝗗𝗮𝘁𝗮𝗰𝗹𝗮𝘀𝘀 𝗖𝗵𝗲𝗮𝘁 𝗦𝗵𝗲𝗲𝘁 @dataclass → simple data holders @dataclass(frozen=True) → immutable objects @dataclass(slots=True) → memory-efficient objects @dataclass(order=True) → sortable objects @dataclass(slots=True,frozen=True) → maximum efficiency 💬 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻: Have you ever optimized memory usage in Python for large object collections? What technique worked best for you? #Python #AdvancedPython #Performance #CleanCode
To view or add a comment, sign in
-
-
👩💻Day 3 of my Python journey — and today I learned why strings deserve more attention than most beginners give them. In every real Python application — web APIs, data pipelines, user interfaces, databases, automation scripts — strings are the most frequently manipulated data type. Today I did not just memories methods. I understood what each one is actually for. String slicing — the pattern that appears everywhere word = "Programming" print(word[0:4]) # "Prog" — first 4 characters print(word[-3:]) # "ing" — last 3 characters print(word[::-1]) # "gnimmargorP" — reversed The [start:end:step] notation is used in data processing constantly: extracting substrings from log entries, sampling every nth element, reversing sequences in algorithms. Fluency with slicing is a visible marker of Python experience. f-strings — the professional standard I now use for everything # Old way — still found in legacy code message = "Hello " + name + ", your score is " + str(score) # Professional way — Python 3.6+ message = f"Hello {name}, your score is {score:.2f}%" f-strings support full Python expressions inside {}. They are faster than concatenation, more readable than .format(), and the standard in every professional codebase written after 2018. Code reviews at Python companies will flag old-style concatenation. String immutability — the performance insight Strings in Python cannot be changed. Every method returns a new string — the original is untouched. This has a performance implication that most beginners miss: # Slow — creates a new string object in every iteration result = "" for word in words: result += word # Fast — creates exactly one string at the end result = "".join(words) The join() approach is up to 50 times faster for large collections. This is the kind of understanding that separates developers who write code that works from developers who write code that scales. What I built: a palindrome checker in one line, a name formatter, and a string analysis tool that counts words, characters, vowels, and finds the longest word in a sentence. #Python#Day3#Strings#SelfLearning#CodewithHarry#PythonBasics #w3schoolsw3schoolsw3schools.com
To view or add a comment, sign in
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development