Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 724e141

Browse files
Merge pull request #13 from Python-World/w34
w34 added
2 parents f19f0c2 + bf819d7 commit 724e141

File tree

2 files changed

+231
-0
lines changed

2 files changed

+231
-0
lines changed

‎doc/newsletters/2023/WEEK_34.md

Lines changed: 230 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,230 @@
1+
2+
# Week 34 - Augest 2023
3+
4+
5+
## 1. 📰 The 'Title()' Method and Its Nuances(Limitations)
6+
7+
The `title()` method is a versatile tool for enhancing text formatting. However, it's essential to recognize its limitations. The title() method isn't just about capitalizing; it also handles special characters and maintains proper casing rules.
8+
9+
10+
Let's explore some insights:
11+
12+
🔍 **Use Case 1: Letters Only**
13+
```python
14+
text = "pycon 2023"
15+
formatted_text = text.title()
16+
print(formatted_text) # Output: Pycon 2023
17+
```
18+
19+
📋 **Use Case 2: Alphanumeric Exploration**
20+
```python
21+
text = "python3.10_release"
22+
formatted_text = text.title()
23+
print(formatted_text) # Output: Python3.10_Release
24+
```
25+
26+
📄 **Use Case 3: Punctuation Perspective**
27+
```python
28+
text = "don't STOP believin'!"
29+
formatted_text = text.title()
30+
print(formatted_text) # Output: Don'T Stop Believin'!
31+
```
32+
33+
34+
## 2. 📚 Run A Python Module Directly With `__main__.py`
35+
36+
The `__main__.py` file empowers you to seamlessly convert your Python module into an executable script, enhancing usability and efficiency.
37+
38+
Have you ever wished to run a Python module directly as if it were a script? The `__main__.py` file holds the key! Let's explore a captivating use case that showcases its remarkable potential:
39+
40+
🔍 **Use Case: Transforming Modules into Scripts**
41+
```
42+
my_module/
43+
|-- __main__.py
44+
|-- helper_functions.py
45+
```
46+
47+
```python
48+
# file : helper_functions.py
49+
50+
def some_function():
51+
return "Python World"
52+
```
53+
54+
Imagine you have a module named `my_module` containing useful functions. By adding the following code to `__main__.py`, you can make your module directly executable:
55+
```python
56+
from helper_functions import *
57+
58+
if __name__ == "__main__":
59+
# Your script logic goes here
60+
result = some_function()
61+
print("Result:", result)
62+
```
63+
64+
Now, executing `python my_module` directly from the command line runs the script within the `__main__.py` file, providing instant access to your module's functionality without additional steps.
65+
66+
67+
## 3. 🔍 Unraveling Dictionary Literals and Constructors
68+
69+
Dictionaries are fundamental for storing and accessing key-value data, and Python's versatility in creating them caters to various scenarios.
70+
71+
Dictionaries are essential data structures in Python, and the methods to create them are fascinating. Let's explore these methods along with some captivating use cases:
72+
73+
🔍 **Use Case 1: Dictionary Literals**
74+
```python
75+
employee = {'name': 'Alice', 'age': 30, 'department': 'HR'}
76+
```
77+
Dictionary literals allow you to create dictionaries directly by listing key-value pairs enclosed in curly braces. Perfect for concise and readable code.
78+
79+
📋 **Use Case 2: Dictionary Constructor**
80+
```python
81+
colors = dict(red='#FF0000', green='#00FF00', blue='#0000FF')
82+
```
83+
The dictionary constructor lets you create dictionaries using the built-in `dict()` function. Ideal for dynamically constructing dictionaries from various sources.
84+
85+
📄 **Use Case 3: Merging Dictionaries**
86+
```python
87+
defaults = {'theme': 'light', 'font_size': 12}
88+
user_preferences = {'font_size': 14, 'language': 'en'}
89+
merged_preferences = {**defaults, **user_preferences}
90+
```
91+
Combine dictionaries effortlessly by unpacking them into a new dictionary. A powerful technique for overriding default values.
92+
93+
🔗 **Use Case 4: Creating Dynamic Dictionaries**
94+
```python
95+
keys = ['a', 'b', 'c']
96+
values = [1, 2, 3]
97+
dynamic_dict = dict(zip(keys, values))
98+
```
99+
Construct dictionaries dynamically by using the `zip()` function to combine lists of keys and values.
100+
101+
102+
**🚀 In a Nutshell:**
103+
104+
Choose dictionary literals for straightforward dictionary creation, and opt for the dictionary constructor when you need more flexibility, such as when dynamically constructing dictionaries or merging multiple dictionaries.
105+
106+
107+
## 4. 🧹 Discovering isort: The Art of Import Arrangement
108+
109+
Import statements – a gateway to the world of functionality. But arranging them can be a challenge. Enter `isort`, the Python package that effortlessly arranges your imports for clarity and readability. Behold how easily you can get started:
110+
111+
1. **Installation of isort** via pip:
112+
113+
```
114+
pip install isort
115+
```
116+
117+
2. **Running isort** on your Python file:
118+
119+
```
120+
isort your_file.py
121+
```
122+
123+
🌟 Witness the transformation as your imports fall into a harmonious order!
124+
125+
🌐 **A Symphony of Imports: Prioritize with Precision**
126+
127+
Picture this: system packages, third-party modules, and local imports, all in symphonic order. `isort` brings this vision to life:
128+
129+
```python
130+
# Before isort
131+
from flask import Flask, render_template
132+
import os, sys
133+
from datetime import datetime, timedelta
134+
from my_local_module import my_function
135+
136+
# After isort
137+
import os
138+
import sys
139+
from datetime import datetime, timedelta
140+
141+
from flask import Flask, render_template
142+
143+
from my_local_module import my_function
144+
```
145+
146+
🧩 **Custom Choreography: Tailoring isort to Your Tunes**
147+
148+
`isort` is not just a one-size-fits-all solution; it dances to your rhythm. Craft your own dance steps with configuration options in `pyproject.toml`:
149+
150+
```toml
151+
# pyproject.toml
152+
[tool.isort]
153+
profile = "black"
154+
line_length = 88
155+
known_third_party = ["flask", "requests"]
156+
```
157+
158+
🔍 **isort in Your Workflow Ensemble: Effortless Integration**
159+
160+
Seamlessly blend `isort` into your development routine. Set it as a pre-commit hook using tools like `pre-commit`. Feel the magic as your imports gracefully align with every commit.
161+
162+
163+
164+
## 5. 🕰️ Master Time with Python's Scheduler!
165+
166+
In the chaotic world of programming, managing tasks at specific intervals is a breeze with Python's built-in `sched` module. Let's jump into a simple example to showcase its power:
167+
168+
```python
169+
import sched
170+
import time
171+
172+
def greet(name):
173+
print(f"Hello, {name}! It's time to shine.")
174+
175+
# Create a scheduler instance
176+
scheduler = sched.scheduler(time.time, time.sleep)
177+
178+
# Schedule the greeting
179+
scheduler.enter(5, 1, greet, ("Python-world",))
180+
181+
# Run the scheduler
182+
scheduler.run()
183+
```
184+
185+
🚀 **Automation at Your Fingertips: Scheduled Tasks**
186+
187+
Python's scheduler isn't limited to just delaying functions. You can schedule tasks at specific times, automate backups, and more. Here's a snippet to illustrate scheduling a task every hour:
188+
189+
```python
190+
import sched
191+
import time
192+
193+
def hourly_task():
194+
print("Performing hourly task!")
195+
196+
scheduler = sched.scheduler(time.time, time.sleep)
197+
198+
# Schedule the task every hour
199+
interval = 3600 # 1 hour in seconds
200+
while True:
201+
scheduler.enter(interval, 1, hourly_task, ())
202+
scheduler.run()
203+
```
204+
205+
**Cron-like Scheduling: `schedule` Library**
206+
207+
For more advanced scheduling, the `schedule` library offers a cron-like syntax. Check out how easy it is to schedule tasks with this powerful tool:
208+
209+
```python
210+
import schedule
211+
import time
212+
213+
def daily_task():
214+
print("Daily task is due!")
215+
216+
# Schedule a task to run daily at 3:30 PM
217+
schedule.every().day.at("15:30").do(daily_task)
218+
219+
while True:
220+
schedule.run_pending()
221+
time.sleep(1)
222+
```
223+
224+
🔍 **Tailoring to Your Time Needs: Versatility of Scheduling**
225+
226+
Whether it's running regular maintenance scripts, sending automated emails, or managing data backups, Python's scheduler empowers you to automate tasks according to your precise timing needs.
227+
228+
🌐 **Unlock the Potential of Python's Scheduler!**
229+
230+
Say goodbye to manual task management and hello to efficient automation with Python's scheduler. From simple delays to intricate cron-like scheduling, Python has your back when it comes to managing time and tasks.

‎doc/newsletters/index.2023.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
.. toctree::
44
:maxdepth: 4
55

6+
Augest - Week 34 <2023/WEEK_34.md>
67
Augest - Week 33 <2023/WEEK_33.md>
78
Augest - Week 32 <2023/WEEK_32.md>
89
Augest - Week 31 <2023/WEEK_31.md>

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /