Which of the following operators in Python is used to check if two values are *not* equal?
Anonymous Quiz
0%
==
0%
=
0%
!=
0%
>=
🚀 Welcome back to Python Day 4! Today, we're diving into the heart of decision-making in code: **Conditional Statements**! 🚦 Ever wondered how programs choose different paths based on conditions? 🤔 That's where `if`, `elif` (short for "else if"), and `else` come in!
They allow your code to execute specific blocks only when certain criteria are met. This is fundamental for creating dynamic and responsive programs. Get ready to make your Python scripts smarter and more interactive! Let's explore how to control the flow! 👇
```python
# Day 4: Conditional Statements (if, elif, else)
# Let's check a student's grade based on their score
score = 85
if score >= 90:
print("Excellent! You got an A. 🎉")
elif score >= 80:
print("Great job! You got a B. 👍")
elif score >= 70:
print("Good effort! You got a C. 😊")
elif score >= 60:
print("You passed! You got a D. 😉")
else:
print("Keep practicing! You need to improve. 💪")
print("n--- Grade check complete ---")
```
Output example:
```
Great job! You got a B. 👍
--- Grade check complete ---
```
**Small Challenge:**
What would the output be if `score` was `95`? How about `55`? Try changing the `score` variable in the code and observe the different outcomes! Can you add another `elif` condition for a specific score, like `score == 100`? 🤔
---
They allow your code to execute specific blocks only when certain criteria are met. This is fundamental for creating dynamic and responsive programs. Get ready to make your Python scripts smarter and more interactive! Let's explore how to control the flow! 👇
```python
# Day 4: Conditional Statements (if, elif, else)
# Let's check a student's grade based on their score
score = 85
if score >= 90:
print("Excellent! You got an A. 🎉")
elif score >= 80:
print("Great job! You got a B. 👍")
elif score >= 70:
print("Good effort! You got a C. 😊")
elif score >= 60:
print("You passed! You got a D. 😉")
else:
print("Keep practicing! You need to improve. 💪")
print("n--- Grade check complete ---")
```
Output example:
```
Great job! You got a B. 👍
--- Grade check complete ---
```
**Small Challenge:**
What would the output be if `score` was `95`? How about `55`? Try changing the `score` variable in the code and observe the different outcomes! Can you add another `elif` condition for a specific score, like `score == 100`? 🤔
---
Consider the following Python code:
```python x = 15 if x > 10: print('First Block') elif x > 5: print('Second Block') else: print('Third Block') ``` What will be the output when this code is executed?
```python x = 15 if x > 10: print('First Block') elif x > 5: print('Second Block') else: print('Third Block') ``` What will be the output when this code is executed?
Anonymous Quiz
0%
First Block
0%
Second Block
0%
Third Block
0%
Error
🚀 Python Day 5 is here, and it's all about making your code work smarter, not harder! Today, we're unlocking the power of *loops*. Loops (`for` and `while`) are fundamental for automating repetitive tasks and iterating through data. Get ready to write efficient and concise code! Let's loop into it! ✨
---
```python
# --- For Loop Example (iterating over a list) ---
print("--- For Loop Example ---")
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(f"I love {fruit}!")
print("n--- Another For Loop (with range) ---")
# range(start, stop, step) generates a sequence of numbers
# range(3) generates 0, 1, 2
for i in range(3):
print(f"Iteration {i + 1}")
# --- While Loop Example (repeating based on a condition) ---
print("n--- While Loop Example ---")
num = 0
while num < 4: # Loop as long as num is less than 4
print(f"Current number: {num}")
num += 1 # Increment num; crucial to avoid an infinite loop!
```
---
Output example:
```
--- For Loop Example ---
I love apple!
I love banana!
I love cherry!
--- Another For Loop (with range) ---
Iteration 1
Iteration 2
Iteration 3
--- While Loop Example ---
Current number: 0
Current number: 1
Current number: 2
Current number: 3
```
---
### Your Turn! 💡
Create a Python script that:
1. Prints numbers from 1 to 5 using a `for` loop.
2. Calculates and prints the sum of numbers from 1 to 10 using a `while` loop.
Share your solutions! 👇
---
---
```python
# --- For Loop Example (iterating over a list) ---
print("--- For Loop Example ---")
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(f"I love {fruit}!")
print("n--- Another For Loop (with range) ---")
# range(start, stop, step) generates a sequence of numbers
# range(3) generates 0, 1, 2
for i in range(3):
print(f"Iteration {i + 1}")
# --- While Loop Example (repeating based on a condition) ---
print("n--- While Loop Example ---")
num = 0
while num < 4: # Loop as long as num is less than 4
print(f"Current number: {num}")
num += 1 # Increment num; crucial to avoid an infinite loop!
```
---
Output example:
```
--- For Loop Example ---
I love apple!
I love banana!
I love cherry!
--- Another For Loop (with range) ---
Iteration 1
Iteration 2
Iteration 3
--- While Loop Example ---
Current number: 0
Current number: 1
Current number: 2
Current number: 3
```
---
### Your Turn! 💡
Create a Python script that:
1. Prints numbers from 1 to 5 using a `for` loop.
2. Calculates and prints the sum of numbers from 1 to 10 using a `while` loop.
Share your solutions! 👇
---
What will happen if the condition in a `while` loop never evaluates to `False`?
Anonymous Quiz
0%
The loop will execute only once.
0%
The loop will become an infinite loop.
0%
Python will automatically exit the loop after 100 iterations.
0%
The program will stop with a syntax error.
🚀 **Python Learning Series - Day 6: Functions in Python!** 🚀
Hello Python learners! Today we're diving into one of the most fundamental concepts in programming: **Functions**! 💡 Functions help us write reusable, organized, and readable code. Instead of repeating the same logic, we can encapsulate it in a function and call it whenever needed. Get ready to streamline your code and make it much more powerful! Let's explore how to define and use them. ✍️
```python
# 1. Defining a simple function
def greet_user(name):
"""This function greets the user with their name."""
print(f"Hello, {name}! Welcome to Day 6 of our Python series.")
# 2. Defining a function that returns a value
def calculate_sum(num1, num2):
"""This function takes two numbers and returns their sum."""
return num1 + num2
# 3. Defining a function with a default parameter
def display_message(message="Keep learning Python!"):
"""This function displays a message, with a default if none is provided."""
print(message)
# Calling our functions
greet_user("Coding Enthusiast")
sum_result = calculate_sum(10, 25)
print(f"The sum of 10 and 25 is: {sum_result}")
display_message()
display_message("Functions make code modular!")
```
Output example:
```
Hello, Coding Enthusiast! Welcome to Day 6 of our Python series.
The sum of 10 and 25 is: 35
Keep learning Python!
Functions make code modular!
```
---
🔥 **Small Challenge:**
Create a Python function called `is_even` that takes one integer as an argument. The function should return `True` if the number is even, and `False` if it's odd. Test it with a few numbers! Share your solution in the comments! 👇
---
Hello Python learners! Today we're diving into one of the most fundamental concepts in programming: **Functions**! 💡 Functions help us write reusable, organized, and readable code. Instead of repeating the same logic, we can encapsulate it in a function and call it whenever needed. Get ready to streamline your code and make it much more powerful! Let's explore how to define and use them. ✍️
```python
# 1. Defining a simple function
def greet_user(name):
"""This function greets the user with their name."""
print(f"Hello, {name}! Welcome to Day 6 of our Python series.")
# 2. Defining a function that returns a value
def calculate_sum(num1, num2):
"""This function takes two numbers and returns their sum."""
return num1 + num2
# 3. Defining a function with a default parameter
def display_message(message="Keep learning Python!"):
"""This function displays a message, with a default if none is provided."""
print(message)
# Calling our functions
greet_user("Coding Enthusiast")
sum_result = calculate_sum(10, 25)
print(f"The sum of 10 and 25 is: {sum_result}")
display_message()
display_message("Functions make code modular!")
```
Output example:
```
Hello, Coding Enthusiast! Welcome to Day 6 of our Python series.
The sum of 10 and 25 is: 35
Keep learning Python!
Functions make code modular!
```
---
🔥 **Small Challenge:**
Create a Python function called `is_even` that takes one integer as an argument. The function should return `True` if the number is even, and `False` if it's odd. Test it with a few numbers! Share your solution in the comments! 👇
---
What keyword is used to define a function in Python?
Anonymous Quiz
0%
func
0%
define
0%
def
0%
function
Hey Python learners! 🚀 Welcome to Day 7! Today, we're diving into two super important data structures: **Lists** and **Tuples**! 📚 Both allow you to store collections of items, but they have key differences in how you can modify them. Get ready to organize your data like a pro! 📋 Let's explore!
```python
# Day 7: Lists and Tuples - Organizing Your Data!
# --- Lists: Ordered, Mutable Collections (use square brackets []) ---
my_shopping_list = ["Milk", "Bread", "Eggs"]
print(f"Original List: {my_shopping_list}")
# Lists can be changed:
my_shopping_list.append("Butter") # Add an item
print(f"After adding Butter: {my_shopping_list}")
my_shopping_list[1] = "Cereal" # Change an item
print(f"After changing Bread to Cereal: {my_shopping_list}")
# Accessing elements by index
print(f"First item: {my_shopping_list[0]}")
print(f"Last item: {my_shopping_list[-1]}")
# --- Tuples: Ordered, Immutable Collections (use parentheses ()) ---
# Tuples are often used for fixed collections, like coordinates or RGB colors.
my_coordinates = (10.5, 20.3)
my_rgb_color = (255, 0, 0) # Red color
print(f"nOriginal Tuple (Coordinates): {my_coordinates}")
print(f"Original Tuple (RGB Color): {my_rgb_color}")
# Tuples cannot be changed after creation.
# If you uncomment the line below, it will cause a TypeError!
# my_coordinates[0] = 12.0 # This would raise an error!
# You can still access elements by index:
print(f"X-coordinate: {my_coordinates[0]}")
# Both Lists and Tuples support slicing!
print(f"Sliced List (first two items): {my_shopping_list[0:2]}")
print(f"Sliced Tuple (first two items): {my_rgb_color[0:2]}")
```
Output example:
```
Original List: ['Milk', 'Bread', 'Eggs']
After adding Butter: ['Milk', 'Bread', 'Eggs', 'Butter']
After changing Bread to Cereal: ['Milk', 'Cereal', 'Eggs', 'Butter']
First item: Milk
Last item: Butter
Original Tuple (Coordinates): (10.5, 20.3)
Original Tuple (RGB Color): (255, 0, 0)
X-coordinate: 10.5
Sliced List (first two items): ['Milk', 'Cereal']
Sliced Tuple (first two items): (255, 0)
```
**Challenge!** 🧠
Can you create a Python list of your 3 favorite fruits, then change the second fruit to something else, and finally convert that list into a tuple? Share your code snippet!
---
```python
# Day 7: Lists and Tuples - Organizing Your Data!
# --- Lists: Ordered, Mutable Collections (use square brackets []) ---
my_shopping_list = ["Milk", "Bread", "Eggs"]
print(f"Original List: {my_shopping_list}")
# Lists can be changed:
my_shopping_list.append("Butter") # Add an item
print(f"After adding Butter: {my_shopping_list}")
my_shopping_list[1] = "Cereal" # Change an item
print(f"After changing Bread to Cereal: {my_shopping_list}")
# Accessing elements by index
print(f"First item: {my_shopping_list[0]}")
print(f"Last item: {my_shopping_list[-1]}")
# --- Tuples: Ordered, Immutable Collections (use parentheses ()) ---
# Tuples are often used for fixed collections, like coordinates or RGB colors.
my_coordinates = (10.5, 20.3)
my_rgb_color = (255, 0, 0) # Red color
print(f"nOriginal Tuple (Coordinates): {my_coordinates}")
print(f"Original Tuple (RGB Color): {my_rgb_color}")
# Tuples cannot be changed after creation.
# If you uncomment the line below, it will cause a TypeError!
# my_coordinates[0] = 12.0 # This would raise an error!
# You can still access elements by index:
print(f"X-coordinate: {my_coordinates[0]}")
# Both Lists and Tuples support slicing!
print(f"Sliced List (first two items): {my_shopping_list[0:2]}")
print(f"Sliced Tuple (first two items): {my_rgb_color[0:2]}")
```
Output example:
```
Original List: ['Milk', 'Bread', 'Eggs']
After adding Butter: ['Milk', 'Bread', 'Eggs', 'Butter']
After changing Bread to Cereal: ['Milk', 'Cereal', 'Eggs', 'Butter']
First item: Milk
Last item: Butter
Original Tuple (Coordinates): (10.5, 20.3)
Original Tuple (RGB Color): (255, 0, 0)
X-coordinate: 10.5
Sliced List (first two items): ['Milk', 'Cereal']
Sliced Tuple (first two items): (255, 0)
```
**Challenge!** 🧠
Can you create a Python list of your 3 favorite fruits, then change the second fruit to something else, and finally convert that list into a tuple? Share your code snippet!
---
Which of the following Python data structures is *mutable* (meaning its elements can be changed after creation)?
Anonymous Quiz
0%
List
0%
Tuple
0%
String
0%
Boolean
Here's your Telegram post and quiz question!
---
🎉 **Day 8: Dictionaries and Sets!** 🎉
Hello, Python learners! 👋 Today, we're diving into two incredibly versatile data structures: Dictionaries and Sets! 📚
* **Dictionaries** store data in `key: value` pairs, perfect for retrieving specific information quickly, much like looking up a word in a physical dictionary. 🔑
* **Sets** are unordered collections of *unique* items. They're super useful for keeping track of distinct elements and performing mathematical set operations like union or intersection. 💡
Let's explore how to use them! 👇
```python
# --- Dictionaries ---
print("--- Dictionaries ---")
# Creating a dictionary for a student's profile
student_profile = {
"name": "Alex",
"age": 22,
"major": "Computer Science",
"courses": ["Python Basics", "Web Development"]
}
print(f"Student Name: {student_profile['name']}")
print(f"Student Age (using .get()): {student_profile.get('age', 'N/A')}") # Safe access
# Modifying an existing value
student_profile["age"] = 23
# Adding a new key-value pair
student_profile["gpa"] = 3.9
print("nUpdated Student Profile:")
for key, value in student_profile.items():
print(f"- {key}: {value}")
# --- Sets ---
print("n--- Sets ---")
# Creating a set from a list with duplicates
numbers_list = [10, 20, 20, 30, 40, 40, 10, 50]
unique_numbers = set(numbers_list)
print(f"Original list: {numbers_list}")
print(f"Unique numbers (set): {unique_numbers}") # Order is not guaranteed
# Adding an element to a set
unique_numbers.add(60)
unique_numbers.add(20) # Adding an existing element has no effect
print(f"Set after adding 60: {unique_numbers}")
# Set operations
set_a = {1, 2, 3, 4, 5}
set_b = {4, 5, 6, 7, 8}
print(f"nSet A: {set_a}")
print(f"Set B: {set_b}")
print(f"Union (A | B): {set_a.union(set_b)}") # All unique elements from both
print(f"Intersection (A & B): {set_a.intersection(set_b)}") # Common elements
print(f"Difference (A - B): {set_a.difference(set_b)}") # Elements in A but not in B
```
Output example:
```
--- Dictionaries ---
Student Name: Alex
Student Age (using .get()): 23
Updated Student Profile:
- name: Alex
- age: 23
- major: Computer Science
- courses: ['Python Basics', 'Web Development']
- gpa: 3.9
--- Sets ---
Original list: [10, 20, 20, 30, 40, 40, 10, 50]
Unique numbers (set): {50, 20, 40, 10, 30}
Set after adding 60: {50, 20, 40, 10, 60, 30}
Set A: {1, 2, 3, 4, 5}
Set B: {4, 5, 6, 7, 8}
Union (A | B): {1, 2, 3, 4, 5, 6, 7, 8}
Intersection (A & B): {4, 5}
Difference (A - B): {1, 2, 3}
```
**Small challenge:** 🧠
Your turn! Create a dictionary called `book_details` for your favorite book, including its `title`, `author`, and `year`. Then, create a set called `unique_genres` with a few genres and add a new genre to it! Share your code snippets in the comments! 👇
---
---
🎉 **Day 8: Dictionaries and Sets!** 🎉
Hello, Python learners! 👋 Today, we're diving into two incredibly versatile data structures: Dictionaries and Sets! 📚
* **Dictionaries** store data in `key: value` pairs, perfect for retrieving specific information quickly, much like looking up a word in a physical dictionary. 🔑
* **Sets** are unordered collections of *unique* items. They're super useful for keeping track of distinct elements and performing mathematical set operations like union or intersection. 💡
Let's explore how to use them! 👇
```python
# --- Dictionaries ---
print("--- Dictionaries ---")
# Creating a dictionary for a student's profile
student_profile = {
"name": "Alex",
"age": 22,
"major": "Computer Science",
"courses": ["Python Basics", "Web Development"]
}
print(f"Student Name: {student_profile['name']}")
print(f"Student Age (using .get()): {student_profile.get('age', 'N/A')}") # Safe access
# Modifying an existing value
student_profile["age"] = 23
# Adding a new key-value pair
student_profile["gpa"] = 3.9
print("nUpdated Student Profile:")
for key, value in student_profile.items():
print(f"- {key}: {value}")
# --- Sets ---
print("n--- Sets ---")
# Creating a set from a list with duplicates
numbers_list = [10, 20, 20, 30, 40, 40, 10, 50]
unique_numbers = set(numbers_list)
print(f"Original list: {numbers_list}")
print(f"Unique numbers (set): {unique_numbers}") # Order is not guaranteed
# Adding an element to a set
unique_numbers.add(60)
unique_numbers.add(20) # Adding an existing element has no effect
print(f"Set after adding 60: {unique_numbers}")
# Set operations
set_a = {1, 2, 3, 4, 5}
set_b = {4, 5, 6, 7, 8}
print(f"nSet A: {set_a}")
print(f"Set B: {set_b}")
print(f"Union (A | B): {set_a.union(set_b)}") # All unique elements from both
print(f"Intersection (A & B): {set_a.intersection(set_b)}") # Common elements
print(f"Difference (A - B): {set_a.difference(set_b)}") # Elements in A but not in B
```
Output example:
```
--- Dictionaries ---
Student Name: Alex
Student Age (using .get()): 23
Updated Student Profile:
- name: Alex
- age: 23
- major: Computer Science
- courses: ['Python Basics', 'Web Development']
- gpa: 3.9
--- Sets ---
Original list: [10, 20, 20, 30, 40, 40, 10, 50]
Unique numbers (set): {50, 20, 40, 10, 30}
Set after adding 60: {50, 20, 40, 10, 60, 30}
Set A: {1, 2, 3, 4, 5}
Set B: {4, 5, 6, 7, 8}
Union (A | B): {1, 2, 3, 4, 5, 6, 7, 8}
Intersection (A & B): {4, 5}
Difference (A - B): {1, 2, 3}
```
**Small challenge:** 🧠
Your turn! Create a dictionary called `book_details` for your favorite book, including its `title`, `author`, and `year`. Then, create a set called `unique_genres` with a few genres and add a new genre to it! Share your code snippets in the comments! 👇
---
What is the primary characteristic that distinguishes a Python set from a list?
Anonymous Quiz
0%
A. Sets can only store numbers, while lists can store any data type.
0%
B. Sets maintain the order of elements, while lists do not.
0%
C. Sets cannot be modified after creation, while lists can.
0%
D. Sets only store unique elements, while lists can contain duplicates.
Here's your Telegram post and quiz for Day 9: String Manipulation!
---
✨ **Day 9: String Manipulation!** ✨
Strings are fundamental in Python – they're how we handle all kinds of text data! From simple messages to complex parsing, mastering string manipulation is a crucial skill. Today, we'll dive into some powerful ways to play with text: slicing, changing cases, replacing parts, and more. Get ready to transform your text like a pro! 🚀
```python
# Our main string
message = " Python is Fun and Powerful! "
print(f"Original: '{message}'")
print(f"Length: {len(message)}")
# Stripping whitespace
stripped_message = message.strip()
print(f"Stripped: '{stripped_message}'")
# Uppercase and Lowercase
print(f"Uppercase: '{stripped_message.upper()}'")
print(f"Lowercase: '{stripped_message.lower()}'")
# Slicing
# [start:end] (end is exclusive)
print(f"First 6 chars (slice): '{stripped_message[0:6]}'")
# [start:] (from start to end)
print(f"Word 'Fun' (slice): '{stripped_message[12:15]}'")
# [:-n] (all but the last n chars)
print(f"Last 9 chars (slice): '{stripped_message[-9:]}'")
# Replacing text
new_message = stripped_message.replace("Fun", "Awesome")
print(f"Replaced: '{new_message}'")
# Combining concepts (f-string with methods)
version = 3.10
final_output = f"Python {version} is truly {new_message.lower().split(' and ')[0]}!"
print(f"Combined F-string: '{final_output}'")
```
Output example:
```
Original: ' Python is Fun and Powerful! '
Length: 32
Stripped: 'Python is Fun and Powerful!'
Uppercase: 'PYTHON IS FUN AND POWERFUL!'
Lowercase: 'python is fun and powerful!'
First 6 chars (slice): 'Python'
Word 'Fun' (slice): 'Fun'
Last 9 chars (slice): 'Powerful!'
Replaced: 'Python is Awesome and Powerful!'
Combined F-string: 'python 3.10 is truly awesome!'
```
💪 **Challenge Time!**
Given the string `quote = "Never give up!"`.
1. Use string slicing to extract the word 'give'.
2. Print 'give' in uppercase.
3. Count how many times the letter 'e' appears in the original `quote` string.
Share your solutions below! 👇
---
---
✨ **Day 9: String Manipulation!** ✨
Strings are fundamental in Python – they're how we handle all kinds of text data! From simple messages to complex parsing, mastering string manipulation is a crucial skill. Today, we'll dive into some powerful ways to play with text: slicing, changing cases, replacing parts, and more. Get ready to transform your text like a pro! 🚀
```python
# Our main string
message = " Python is Fun and Powerful! "
print(f"Original: '{message}'")
print(f"Length: {len(message)}")
# Stripping whitespace
stripped_message = message.strip()
print(f"Stripped: '{stripped_message}'")
# Uppercase and Lowercase
print(f"Uppercase: '{stripped_message.upper()}'")
print(f"Lowercase: '{stripped_message.lower()}'")
# Slicing
# [start:end] (end is exclusive)
print(f"First 6 chars (slice): '{stripped_message[0:6]}'")
# [start:] (from start to end)
print(f"Word 'Fun' (slice): '{stripped_message[12:15]}'")
# [:-n] (all but the last n chars)
print(f"Last 9 chars (slice): '{stripped_message[-9:]}'")
# Replacing text
new_message = stripped_message.replace("Fun", "Awesome")
print(f"Replaced: '{new_message}'")
# Combining concepts (f-string with methods)
version = 3.10
final_output = f"Python {version} is truly {new_message.lower().split(' and ')[0]}!"
print(f"Combined F-string: '{final_output}'")
```
Output example:
```
Original: ' Python is Fun and Powerful! '
Length: 32
Stripped: 'Python is Fun and Powerful!'
Uppercase: 'PYTHON IS FUN AND POWERFUL!'
Lowercase: 'python is fun and powerful!'
First 6 chars (slice): 'Python'
Word 'Fun' (slice): 'Fun'
Last 9 chars (slice): 'Powerful!'
Replaced: 'Python is Awesome and Powerful!'
Combined F-string: 'python 3.10 is truly awesome!'
```
💪 **Challenge Time!**
Given the string `quote = "Never give up!"`.
1. Use string slicing to extract the word 'give'.
2. Print 'give' in uppercase.
3. Count how many times the letter 'e' appears in the original `quote` string.
Share your solutions below! 👇
---
What will be the output of the following Python code?
```python
text = "Hello, World!" new_text = text.replace("World", "Python").replace("!", "!!!") print(new_text) ```
```python
text = "Hello, World!" new_text = text.replace("World", "Python").replace("!", "!!!") print(new_text) ```
Anonymous Quiz
0%
Hello, Python!
0%
Hello, Python!!!
0%
Hello, World!!!
0%
Hello, Python
🎉 *Day 10: Unlocking File I/O in Python!* 📂
Ever wondered how to save data beyond your program's runtime? Today, we're diving into **File Input/Output (I/O)**! You'll learn to read from, write to, and append data in files using Python. It's crucial for logging, data persistence, and so much more. We'll use the `open()` function and the super handy `with` statement for safe file handling. Get ready to make your programs remember! ✍️
```python
import os
# Define file name
file_name = 'my_notes.txt'
# --- Writing to a file (will create if not exists, overwrite if exists) ---
print("--- Writing to 'my_notes.txt' ---")
with open(file_name, 'w') as file:
file.write("Python File I/O is fun!n")
file.write("This is the first line written.n")
file.write("And this is the second line written.n")
print("Content written successfully.n")
# --- Appending to a file (will add to the end) ---
print("--- Appending to 'my_notes.txt' ---")
with open(file_name, 'a') as file:
file.write("Appending new content here.n")
file.write("Don't forget the newline character for new lines!n")
print("Content appended successfully.n")
# --- Reading from a file (reads entire content) ---
print("--- Reading 'my_notes.txt' (Full Content) ---")
with open(file_name, 'r') as file:
full_content = file.read() # Reads the entire file as a single string
print("nFull Content:n", full_content)
# --- Reading from a file line by line ---
print("--- Reading 'my_notes.txt' (Line by Line) ---")
with open(file_name, 'r') as file:
print("nContent Line by Line:")
for line in file: # Iterates over lines in the file
print(f"Line: {line.strip()}") # .strip() removes trailing newline characters
# Optional: Clean up the created file
# os.remove(file_name)
# print(f"n'{file_name}' has been removed.")
```
Output example:
```
--- Writing to 'my_notes.txt' ---
Content written successfully.
--- Appending to 'my_notes.txt' ---
Content appended successfully.
--- Reading 'my_notes.txt' (Full Content) ---
Full Content:
Python File I/O is fun!
This is the first line written.
And this is the second line written.
Appending new content here.
Don't forget the newline character for new lines!
--- Reading 'my_notes.txt' (Line by Line) ---
Content Line by Line:
Line: Python File I/O is fun!
Line: This is the first line written.
Line: And this is the second line written.
Line: Appending new content here.
Line: Don't forget the newline character for new lines!
```
💡 **Small Challenge:**
Modify the reading part of the code to:
1. Read only the **first 3 lines** of `my_notes.txt` using `readlines()`.
2. Count how many lines in the file contain the word "line" (case-insensitive).
Share your solutions or questions below! 👇
---
Ever wondered how to save data beyond your program's runtime? Today, we're diving into **File Input/Output (I/O)**! You'll learn to read from, write to, and append data in files using Python. It's crucial for logging, data persistence, and so much more. We'll use the `open()` function and the super handy `with` statement for safe file handling. Get ready to make your programs remember! ✍️
```python
import os
# Define file name
file_name = 'my_notes.txt'
# --- Writing to a file (will create if not exists, overwrite if exists) ---
print("--- Writing to 'my_notes.txt' ---")
with open(file_name, 'w') as file:
file.write("Python File I/O is fun!n")
file.write("This is the first line written.n")
file.write("And this is the second line written.n")
print("Content written successfully.n")
# --- Appending to a file (will add to the end) ---
print("--- Appending to 'my_notes.txt' ---")
with open(file_name, 'a') as file:
file.write("Appending new content here.n")
file.write("Don't forget the newline character for new lines!n")
print("Content appended successfully.n")
# --- Reading from a file (reads entire content) ---
print("--- Reading 'my_notes.txt' (Full Content) ---")
with open(file_name, 'r') as file:
full_content = file.read() # Reads the entire file as a single string
print("nFull Content:n", full_content)
# --- Reading from a file line by line ---
print("--- Reading 'my_notes.txt' (Line by Line) ---")
with open(file_name, 'r') as file:
print("nContent Line by Line:")
for line in file: # Iterates over lines in the file
print(f"Line: {line.strip()}") # .strip() removes trailing newline characters
# Optional: Clean up the created file
# os.remove(file_name)
# print(f"n'{file_name}' has been removed.")
```
Output example:
```
--- Writing to 'my_notes.txt' ---
Content written successfully.
--- Appending to 'my_notes.txt' ---
Content appended successfully.
--- Reading 'my_notes.txt' (Full Content) ---
Full Content:
Python File I/O is fun!
This is the first line written.
And this is the second line written.
Appending new content here.
Don't forget the newline character for new lines!
--- Reading 'my_notes.txt' (Line by Line) ---
Content Line by Line:
Line: Python File I/O is fun!
Line: This is the first line written.
Line: And this is the second line written.
Line: Appending new content here.
Line: Don't forget the newline character for new lines!
```
💡 **Small Challenge:**
Modify the reading part of the code to:
1. Read only the **first 3 lines** of `my_notes.txt` using `readlines()`.
2. Count how many lines in the file contain the word "line" (case-insensitive).
Share your solutions or questions below! 👇
---