Python3
200 subscribers
100 photos
6 videos
26 files
518 links
🎓 آموزش و پروژه‌های Python
آموزش‌های کاربردی و پروژه‌های عملی Python برای همه سطوح. 🚀
Download Telegram
📚 مقدمه دوره آموزش پایتون از 0 تا 100

سلام دوستان عزیز! 👋

به دوره جامع آموزش پایتون از 0 تا 100 خوش آمدید! 🎉

در این دوره قصد داریم با هم پایتون را از پایه تا پیشرفته یاد بگیریم و به یک برنامه‌نویس حرفه‌ای تبدیل شویم. این دوره برای کسانی که هیچ تجربه‌ای در برنامه‌نویسی ندارند تا افرادی که به دنبال تقویت مهارت‌های خود هستند، مناسب است.

🔍 اهداف دوره:

- آشنایی با پایتون: شروع از مفاهیم پایه و نصب پایتون.
- مبانی برنامه‌نویسی: متغیرها، انواع داده‌ها، عملیات ریاضی و منطقی.
- ساختارهای داده: لیست‌ها، تاپل‌ها، دیکشنری‌ها و مجموعه‌ها.
- حلقه‌ها و توابع: استفاده از حلقه‌ها و تعریف توابع.
- مدیریت فایل‌ها و استثناء‌ها: خواندن و نوشتن فایل‌ها، مدیریت خطاها.
- برنامه‌نویسی شیءگرا: مفاهیم پایه، وراثت و پلی‌مورفیسم.
- ماژول‌ها و کتابخانه‌ها: معرفی ماژول‌ها و کتابخانه‌های استاندارد.
- پروژه‌های عملی: پروژه‌های کاربردی برای تثبیت مطالب.
- مفاهیم پیشرفته: Decorators، Generators و مدیریت حافظه.
- توسعه وب: آشنایی با Flask و Django.
- کار با داده‌ها: معرفی Pandas و NumPy.

📅 برنامه دوره:

1. مبانی پایتون: نصب، متغیرها، انواع داده‌ها، عملیات ریاضی و منطقی.
2. ساختارهای داده: لیست‌ها، تاپل‌ها، دیکشنری‌ها و مجموعه‌ها.
3. حلقه‌ها و توابع: استفاده از حلقه‌ها و تعریف توابع.
4. مدیریت فایل‌ها و استثناء‌ها: خواندن و نوشتن فایل‌ها، مدیریت خطاها.
5. برنامه‌نویسی شیءگرا: مفاهیم پایه، وراثت و پلی‌مورفیسم.
6. ماژول‌ها و کتابخانه‌ها: معرفی ماژول‌ها و کتابخانه‌های استاندارد.
7. پروژه‌های عملی: پروژه‌های کاربردی برای تثبیت مطالب.
8. مفاهیم پیشرفته: Decorators، Generators و مدیریت حافظه.
9. توسعه وب: آشنایی با Flask و Django.
10. کار با داده‌ها: معرفی Pandas و NumPy.

🎯 چه چیزهایی یاد خواهید گرفت؟

- نوشتن کد پایتون: از اولین قدم‌ها تا پروژه‌های پیچیده.
- حل مسائل: استفاده از پایتون برای حل مسائل روزمره.
- توسعه وب: ساخت و توسعه وب‌سایت‌ها با استفاده از Flask و Django.
- تحلیل داده: کار با داده‌ها و انجام تحلیل‌های پیچیده با Pandas و NumPy.

🛠️ ابزارهایی که استفاده خواهیم کرد:

- پایتون: نسخه‌های جدید پایتون.
- ویرایشگرهای متنی: Visual Studio Code، PyCharm.
- کتابخانه‌ها و فریم‌ورک‌ها: Flask، Django، Pandas، NumPy.

آماده‌اید شروع کنیم؟ بیایید با هم دنیای جذاب برنامه‌نویسی پایتون را کشف کنیم! 🚀

(اموزش های بیشتر کانال ما)

#پایتون #آموزش_پایتون #برنامه_نویسی #دوره_آموزشی #Python #Programming #PythonCourse
👍5
📚 دوره آموزش پایتون از 0 تا 100

پارت 1: نصب و راه‌اندازی پایتون

سلام دوستان عزیز! 👋

به اولین پارت از دوره جامع آموزش پایتون خوش آمدید! 🎉

در این جلسه، قصد داریم شما را با نصب و راه‌اندازی پایتون آشنا کنیم. با ما همراه باشید تا اولین قدم‌ها برای تبدیل شدن به یک برنامه‌نویس حرفه‌ای پایتون را بردارید. 💪

🔧 نصب پایتون

1. دانلود پایتون:
- به وبسایت رسمی پایتون ([Python.org]) بروید و آخرین نسخه پایتون را دانلود کنید. 🚀

2. نصب پایتون:
- فایل دانلود شده را اجرا کنید.
- مطمئن شوید گزینه "Add Python to PATH" را انتخاب کرده‌اید.
- روی "Install Now" کلیک کنید. 🛠️

🖥️ نصب ویرایشگر متنی

برای نوشتن و اجرای کدهای پایتون، به یک ویرایشگر متنی نیاز دارید. پیشنهاد می‌کنیم از یکی از ویرایشگرهای زیر استفاده کنید:

1. Visual Studio Code:
- رایگان و بسیار قدرتمند
- [دانلود Visual Studio Code]

2. PyCharm:
- نسخه رایگان و حرفه‌ای
- [دانلود PyCharm]

👨‍💻 اجرای اولین برنامه پایتون

حالا که پایتون و ویرایشگر متنی را نصب کرده‌اید، وقت آن است که اولین برنامه خود را بنویسید.

1. باز کردن ویرایشگر:
ویرایشگر متنی خود را باز کنید.

2. ایجاد فایل جدید:
یک فایل جدید با پسوند .py ایجاد کنید (مثلاً hello.py). 📄

3. نوشتن کد:
کد زیر را در فایل خود بنویسید:


   print("Hello, World!")

4. ذخیره و اجرای فایل:
- فایل را ذخیره کنید.
- برای اجرای فایل:
- در Visual Studio Code: روی دکمه "Run" کلیک کنید. ▶️
- در خط فرمان: دستور python hello.py را اجرا کنید. 💻

اگر همه چیز درست انجام شده باشد، باید خروجی زیر را ببینید:

   Hello, World!

تبریک می‌گوییم! شما اولین برنامه پایتون خود را با موفقیت اجرا کردید. 🎉

🎯 خلاصه

در این جلسه:
- پایتون را دانلود و نصب کردید.
- یک ویرایشگر متنی نصب کردید.
- اولین برنامه پایتون خود را نوشتید و اجرا کردید.

🔜 ادامه دوره

در جلسه بعدی، به متغیرها و انواع داده‌ها در پایتون خواهیم پرداخت. منتظر باشید! 😉

[اموزش های بیشتر کانال ما]

#پایتون #آموزش_پایتون #برنامه_نویسی #دوره_آموزشی #Python #Programming #PythonCourse
👍7
این بیلاخ(👍)زیر پستارو هم انگشت کنید هربار که نباید بگم
👍9
یه آموزش الگوریتم داشته باشیم
👍6
الگوریتم Time-Interval Sorting در پایتون 🚀

این الگوریتم به شما کمک می‌کنه تا داده‌ها رو بر اساس بازه‌های زمانی مرتب کنید. 📅 این برای زمانی که دارید با داده‌های رویدادی (مثل رویدادهای تقویمی، لاگ‌های سرور و...) کار می‌کنید خیلی مفیده. 💡

مثال 📝

def time_interval_sorting(intervals):
# مرتب‌سازی بر اساس زمان شروع
sorted_intervals = sorted(intervals, key=lambda x: x[0])
return sorted_intervals

# مثال
intervals = [(5, 10), (1, 3), (4, 8), (2, 6)]
sorted_intervals = time_interval_sorting(intervals)
print("بازه‌های زمانی مرتب‌شده:", sorted_intervals)

بیایید این کد رو خط به خط بررسی کنیم:

1. تعریف تابع: در ابتدا، ما یک تابع به نام time_interval_sorting تعریف می‌کنیم که یک لیست از بازه‌های زمانی را به عنوان ورودی می‌گیرد. هر بازه زمانی به صورت یک جفت عدد (زمان شروع و زمان پایان) تعریف می‌شود. 🛠️


    def time_interval_sorting(intervals):

2. مرتب‌سازی: داخل تابع، ما از تابع sorted برای مرتب‌سازی لیست بازه‌های زمانی استفاده می‌کنیم. کلید مرتب‌سازی بر اساس زمان شروع هر بازه تنظیم شده است. برای این کار، از یک تابع لامبدا استفاده می‌کنیم که عنصر اول (زمان شروع) هر بازه را برمی‌گرداند. 🔄


    sorted_intervals = sorted(intervals, key=lambda x: x[0])

3. برگشت نتیجه: در نهایت، لیست مرتب‌شده را برمی‌گردانیم. 🏁


    return sorted_intervals

4. مثال کاربردی: حالا یک مثال از بازه‌های زمانی داریم و از تابع استفاده می‌کنیم تا آنها را مرتب کنیم. 📝


    intervals = [(5, 10), (1, 3), (4, 8), (2, 6)]
sorted_intervals = time_interval_sorting(intervals)
print("بازه‌های زمانی مرتب‌شده:", sorted_intervals)

اجرای کد 💻

با اجرای این کد، خروجی به صورت زیر خواهد بود:

بازه‌های زمانی مرتب‌شده: [(1, 3), (2, 6), (4, 8), (5, 10)]

بیایید نگاه دقیق‌تری به عملکرد این الگوریتم بندازیم:

- Lambda Function: تابع lambda x: x[0] یک تابع ناشناس (بدون نام) است که به عنوان کلید مرتب‌سازی استفاده می‌شود. این تابع عنصر اول هر بازه (زمان شروع) را برمی‌گرداند تا بر اساس آن مرتب‌سازی انجام شود. 🗝️

- Sorted Function: تابع sorted یک تابع داخلی پایتون است که یک لیست را گرفته و آن را مرتب می‌کند. می‌توانید از پارامتر key برای تعیین کلید مرتب‌سازی استفاده کنید. 🔧

- Complexity: زمان اجرای این الگوریتم O(n log n) است که بهینه‌ترین حالت برای مرتب‌سازی عمومی است. ⏱️

کاربردهای عملی 🌟

این الگوریتم در بسیاری از موارد کاربرد دارد:

- مدیریت زمان‌بندی: مرتب‌سازی جلسات، وظایف، یا هر نوع رویداد دیگری که دارای زمان شروع و پایان هستند.
- تحلیل لاگ‌ها: مرتب‌سازی لاگ‌های سرور برای تحلیل بهتر.
- تجزیه و تحلیل داده‌ها: مرتب‌سازی داده‌های زمانی برای تحلیل روندها و الگوها.

[اموزش های بیشتر کانال ما]

#Python #Programming #CodingTips #LearnPython
👍21
👨‍💻👩‍💻 آیا به دنبال مشاوره از برنامه‌نویسان ماهر هستید؟ اینجا جایی است که می‌توانید بهترین کمک‌ها را دریافت کنید!

🔍👨‍🏫 از برنامه‌نویسان حرفه‌ای ما کمک بگیرید و مهارت‌های خود را به سطح بعدی ببرید. هر سوالی دارید، اینجا پاسخ داده می‌شود!

🔧👩‍💻 به جامعه‌ای پویا و حرفه‌ای بپیوندید و از تجربیات دیگران بهره‌مند شوید. ما اینجا هستیم تا به شما کمک کنیم تا موفق شوید.

📚🌟 بیایید با هم یاد بگیریم و رشد کنیم. به گروه ما بپیوندید و از مشاوره‌ها و منابع ارزشمند بهره‌مند شوید.

📲 لینک عضویت: [گروه مشاوره برنامه‌نویسان]

🧑‍🏫لینک کانال آموزش پایتون: [کانال اموزشی پایتون]

📢 منتظرتون هستیم! بپیوندید و دوستان جدید پیدا کنید. 🌐
4
🎮 معرفی موتورهای بازی‌سازی با پایتون 🎮

اگر علاقه‌مند به ساخت بازی‌های سه‌بعدی هستید و می‌خواهید از زبان برنامه‌نویسی پایتون استفاده کنید، این موتورهای بازی‌سازی می‌توانند برای شما مفید باشند:

1. Panda3D 🐼
- توضیحات: Panda3D یک موتور بازی‌سازی سه‌بعدی منبع‌باز است که توسط Disney و Carnegie Mellon University توسعه داده شده است. این موتور به شما امکان می‌دهد بازی‌های سه‌بعدی و شبیه‌سازهای تعاملی بسازید.
- ویژگی‌ها: پشتیبانی از پایتون و C++، سیستم رندرینگ قوی، ابزارهای فیزیک و برخورد، ویرایشگر صحنه داخلی.
- نصب:

     pip install panda3d

- وبسایت: [Panda3D]

2. Godot 🕹️
- توضیحات: Godot یک موتور بازی‌سازی چندسکویی منبع‌باز است که از زبان GDScript (زبان اختصاصی موتور) و همچنین از پایتون (از طریق افزودنی‌ها) پشتیبانی می‌کند. این موتور برای ساخت بازی‌های دو‌بعدی و سه‌بعدی مناسب است.
- ویژگی‌ها: محیط توسعه یکپارچه، پشتیبانی از پایتون از طریق افزونه‌ها، ابزارهای قدرتمند برای طراحی صحنه و اسکریپت‌نویسی.
- نصب: افزونه پایتون را از Godot Asset Library دانلود و نصب کنید.
- وبسایت: [Godot Engine]

3. Ursina 🎲
- توضیحات: Ursina یک موتور بازی‌سازی جدید و ساده برای پایتون است که بیشتر برای ساخت بازی‌های سه‌بعدی کوچک و متوسط مناسب است. این موتور با هدف ساده‌سازی فرآیند توسعه بازی ساخته شده است.
- ویژگی‌ها: ساده و یادگیری سریع، پشتیبانی از شیدرها، امکان ساخت بازی‌های واقعیت مجازی (VR).
- نصب:

     pip install ursina

- وبسایت: [Ursina]

4. Pygame 🕹️
- توضیحات: Pygame یک کتابخانه معروف برای ساخت بازی‌های دوبعدی است، اما با استفاده از کتابخانه‌های اضافی مانند OpenGL می‌توانید بازی‌های سه‌بعدی نیز بسازید.
- ویژگی‌ها: پشتیبانی گسترده از بازی‌های دوبعدی، قابلیت استفاده از OpenGL برای سه‌بعدی‌سازی.
- نصب:

     pip install pygame

- وبسایت: [Pygame]

📢 برای یادگیری بیشتر و دریافت آموزش‌های عملی، به کانال ما بپیوندید: [کانال آموزش پایتون]
🌟 جدیدترین قابلیت پایتون 3.11 که شاید هنوز نمی‌دانید! 🌟

سلام به همه برنامه‌نویسان عزیز! 👋

پایتون 3.11 با یک قابلیت جدید و جذاب آمده که مدیریت استثناها را بهبود می‌بخشد: Exception Groups و except\ 🎉🐍

🌐 Exception Groups و except\

🔹 تعریف Exception Groups:
در پایتون 3.11، می‌توانید گروه‌هایی از استثناها را با استفاده از ExceptionGroup ایجاد کنید. این ویژگی زمانی که چندین استثنا به طور همزمان رخ می‌دهند بسیار مفید است.

🔹 نحوه استفاده از Exception Groups:
برای استفاده از Exception Groups و مدیریت آنها با except*، می‌توانید به روش زیر عمل کنید:

from __future__ import annotations  # برای تایپ هینتینگ در پایتون 3.11
import traceback

class MyCustomError(Exception):
pass

class AnotherError(Exception):
pass

def func():
try:
raise ExceptionGroup("Multiple Errors", [MyCustomError("Error 1"), AnotherError("Error 2")])
except* MyCustomError as e:
print(f"Caught MyCustomError: {e}")
except* AnotherError as e:
print(f"Caught AnotherError: {e}")

func()

🔹 مزایای استفاده از Exception Groups:
1. مدیریت ساده‌تر: این قابلیت به شما اجازه می‌دهد تا کد تمیزتر و قابل فهم‌تری بنویسید. 📜
2. انعطاف‌پذیری بیشتر: می‌توانید چندین استثنا را به صورت همزمان مدیریت کنید. 💡

برای اطلاعات بیشتر و دریافت آموزش‌های عملی، به کانال ما بپیوندید: [کانال آموزش پایتون]🚀📚

#پایتون #Python #برنامه_نویسی #ExceptionGroups #پایتون3_11 #آموزش #کانال_تلگرام
👍1
📚 دوره آموزش پایتون از 0 تا 100

پارت 2: متغیرها و انواع داده‌ها

سلام دوستان عزیز! 👋

به دومین پارت از دوره جامع آموزش پایتون خوش آمدید! 🎉

در این جلسه، قصد داریم با مفاهیم متغیرها و انواع داده‌ها در پایتون آشنا شویم. این مبانی پایه‌ای برای تمامی برنامه‌نویسی‌ها و پروژه‌های بعدی ما خواهد بود. بیایید شروع کنیم! 🚀

💡 متغیرها چیستند؟

متغیرها مکان‌هایی در حافظه هستند که داده‌ها را ذخیره می‌کنند. به عبارت دیگر، متغیرها به ما اجازه می‌دهند که مقادیر را ذخیره و از آن‌ها در برنامه‌های خود استفاده کنیم.

📝 تعریف متغیرها

برای تعریف یک متغیر در پایتون، کافی است یک نام به آن اختصاص دهیم و مقداری به آن انتساب دهیم. به عنوان مثال:

name = "Alice"
age = 25
height = 1.75

در مثال بالا:
- name یک متغیر از نوع رشته (string) است.
- age یک متغیر از نوع عدد صحیح (integer) است.
- height یک متغیر از نوع عدد اعشاری (float) است.

🔢 انواع داده‌ها در پایتون

پایتون انواع مختلفی از داده‌ها را پشتیبانی می‌کند. در زیر به برخی از مهم‌ترین انواع داده‌ها اشاره می‌کنیم:

1. اعداد صحیح (int):
- برای ذخیره اعداد صحیح استفاده می‌شود.
- مثال: age = 25

2. اعداد اعشاری (float):
- برای ذخیره اعداد اعشاری استفاده می‌شود.
- مثال: height = 1.75

3. رشته‌ها (str):
- برای ذخیره متن استفاده می‌شود.
- مثال: name = "Alice"

4. بولین (bool):
- برای ذخیره مقادیر درست (True) یا نادرست (False) استفاده می‌شود.
- مثال: is_student = True

🔄 تبدیل انواع داده‌ها

در پایتون، می‌توان انواع داده‌ها را به یکدیگر تبدیل کرد. این کار با استفاده از توابع داخلی پایتون انجام می‌شود. به عنوان مثال:

age = "25"
age = int(age) # تبدیل رشته به عدد صحیح

height = 1.75
height_str = str(height) # تبدیل عدد اعشاری به رشته

🎯 مثال‌های عملی

1. مثال 1: جمع دو عدد صحیح


   a = 10
b = 20
sum = a + b
print("Sum:", sum)

خروجی:

   Sum: 30

2. مثال 2: اتصال دو رشته


   first_name = "Alice"
last_name = "Johnson"
full_name = first_name + " " + last_name
print("Full Name:", full_name)

خروجی:

   Full Name: Alice Johnson

3. مثال 3: استفاده از مقادیر بولین


   is_raining = False
if is_raining:
print("Take an umbrella!")
else:
print("No need for an umbrella.")

خروجی:

   No need for an umbrella.

🎯 خلاصه

در این جلسه:
- با مفهوم متغیرها آشنا شدیم.
- انواع داده‌های پایه در پایتون را یاد گرفتیم.
- با نحوه تبدیل انواع داده‌ها آشنا شدیم.
- مثال‌های عملی برای درک بهتر مفاهیم ارائه دادیم.

🔜 ادامه دوره

در جلسه بعدی، به عملیات ریاضی و منطقی در پایتون خواهیم پرداخت. منتظر باشید! 😉

[اموزش های بیشتر کانال ما]

#پایتون #آموزش_پایتون #برنامه_نویسی #دوره_آموزشی #Python #Programming #PythonCourse
👍3
📚 دوره آموزش پایتون از 0 تا 100

پارت 3: عملیات ریاضی و منطقی

سلام دوستان عزیز! 👋

به سومین پارت از دوره جامع آموزش پایتون خوش آمدید! 🎉

در این جلسه، قصد داریم با عملیات ریاضی و منطقی در پایتون آشنا شویم. این عملیات‌ها پایه و اساس بسیاری از برنامه‌ها و الگوریتم‌های برنامه‌نویسی هستند. بیایید شروع کنیم! 🚀

عملیات ریاضی

پایتون عملیات ریاضی مختلفی را پشتیبانی می‌کند. در زیر به برخی از مهم‌ترین آن‌ها اشاره می‌کنیم:

1. جمع (+):

   a = 10
b = 5
result = a + b
print("Sum:", result) # خروجی: Sum: 15

2. تفریق (-):

   a = 10
b = 5
result = a - b
print("Difference:", result) # خروجی: Difference: 5

3. ضرب (*):

   a = 10
b = 5
result = a * b
print("Product:", result) # خروجی: Product: 50

4. تقسیم (/):

   a = 10
b = 5
result = a / b
print("Quotient:", result) # خروجی: Quotient: 2.0

5. توان ():**

   a = 2
b = 3
result = a ** b
print("Power:", result) # خروجی: Power: 8

6. باقی‌مانده (٪):

   a = 10
b = 3
result = a % b
print("Remainder:", result) # خروجی: Remainder: 1

7. تقسیم صحیح (//):

   a = 10
b = 3
result = a // b
print("Floor Division:", result) # خروجی: Floor Division: 3

🔄 اولویت عملیات ریاضی

اولویت عملیات ریاضی در پایتون مشابه ریاضیات معمول است:

1. پرانتز‌ها ()
2. توان **
3. ضرب، تقسیم، تقسیم صحیح و باقی‌مانده * / // %
4. جمع و تفریق + -

مثال:
result = 2 + 3 * 4
print("Result:", result) # خروجی: Result: 14

result = (2 + 3) * 4
print("Result with parentheses:", result) # خروجی: Result with parentheses: 20

🔍 عملیات منطقی

پایتون همچنین عملیات منطقی مختلفی را پشتیبانی می‌کند که برای مقایسه و ترکیب شرایط استفاده می‌شود. در زیر به برخی از مهم‌ترین آن‌ها اشاره می‌کنیم:

1. مساوی بودن (==):

   a = 10
b = 5
result = (a == b)
print("Equal:", result) # خروجی: Equal: False

2. نامساوی (!=):

   a = 10
b = 5
result = (a != b)
print("Not Equal:", result) # خروجی: Not Equal: True

3. بزرگتر از (>):

   a = 10
b = 5
result = (a > b)
print("Greater than:", result) # خروجی: Greater than: True

4. کوچکتر از (<):

   a = 10
b = 5
result = (a < b)
print("Less than:", result) # خروجی: Less than: False

5. بزرگتر یا مساوی (>=):

   a = 10
b = 10
result = (a >= b)
print("Greater than or Equal:", result) # خروجی: Greater than or Equal: True

6. کوچکتر یا مساوی (<=):

   a = 10
b = 10
result = (a <= b)
print("Less than or Equal:", result) # خروجی: Less than or Equal: True

7. عملگر منطقی and:

   a = True
b = False
result = a and b
print("Logical AND:", result) # خروجی: Logical AND: False

8. عملگر منطقی or:

   a = True
b = False
result = a or b
print("Logical OR:", result) # خروجی: Logical OR: True

9. عملگر منطقی not:

   a = True
result = not a
print("Logical NOT:", result) # خروجی: Logical NOT: False

🎯 مثال‌های عملی

1. مثال 1: محاسبه مساحت یک مستطیل

   length = 5
width = 3
area = length * width
print("Area of Rectangle:", area) # خروجی: Area of Rectangle: 15

2. مثال 2: بررسی شرایط سن

   age = 20
is_adult = age >= 18
print("Is Adult:", is_adult) # خروجی: Is Adult: True

3. مثال 3: بررسی شرایط متعدد

   score = 85
passed = score >= 50
excellent = score >= 90
result = passed and not excellent
print("Passed but not Excellent:", result) # خروجی: Passed but not Excellent: True

🎯 خلاصه

در این جلسه:
- با عملیات ریاضی در پایتون آشنا شدیم.
- اولویت عملیات ریاضی را یاد گرفتیم.
- با عملیات منطقی و کاربردهای آن‌ها آشنا شدیم.
- مثال‌های عملی برای درک بهتر مفاهیم ارائه دادیم.

🔜 ادامه دوره

در جلسه بعدی، به دستورات شرطی در پایتون خواهیم پرداخت. منتظر باشید! 😉

[اموزش های بیشتر کانال ما]

#پایتون #آموزش_پایتون #برنامه_نویسی #دوره_آموزشی #Python
👍1
📚 دوره آموزش پایتون از 0 تا 100

پارت 4: دستورات شرطی و کنترل جریان

سلام دوستان عزیز! 👋

به چهارمین پارت از دوره جامع آموزش پایتون خوش آمدید! 🎉

در این جلسه، قصد داریم با دستورات شرطی و کنترل جریان در پایتون آشنا شویم. این دستورات به ما اجازه می‌دهند تا بسته‌های کد را بر اساس شرایط خاص اجرا یا نادرست کنیم. بیایید شروع کنیم! 🚀

🚦 دستورات شرطی

در پایتون، دستورات شرطی به ما این امکان را می‌دهند که کدهایی را بر اساس شرایط مختلف اجرا کنیم یا نادرست کنیم. دستورات شرطی اصلی عبارتند از:

1. دستور if:

   age = 20
if age >= 18:
print("You are an adult.")

2. دستور if و else:

   age = 15
if age >= 18:
print("You are an adult.")
else:
print("You are not an adult yet.")

3. دستور if، elif و else:

   score = 85
if score >= 90:
print("Grade: A")
elif score >= 80:
print("Grade: B")
elif score >= 70:
print("Grade: C")
else:
print("Grade: D")

🔄 عبارات منطقی

در دستورات شرطی ما می‌توانیم از عبارات منطقی استفاده کنیم که باعث می‌شود کدهای ما به شکلی پویا و قابل تغییر عمل کنند. عبارات منطقی اصلی عبارتند از:

- and: بررسی هر دو عبارت
- or: بررسی حداقل یکی از دو عبارت
- not: اعتراض به یک عبارت

🎯 مثال‌های عملی

1. مثال 1: دستورات شرطی


   age = 20
if age >= 18:
print("You are an adult.")
else:
print("You are not an adult yet.")

2. مثال 2: دستورات شرطی چندگانه


   score = 85
if score >= 90:
print("Grade: A")
elif score >= 80:
print("Grade: B")
elif score >= 70:
print("Grade: C")
else:
print("Grade: D")

3. مثال 3: استفاده از عبارات منطقی


   is_raining = True
have_umbrella = False
if is_raining and not have_umbrella:
print("Take an umbrella!")

🔜 ادامه دوره

در جلسه بعدی، به حلقه‌ها و تکرارها در پایتون خواهیم پرداخت. منتظر باشید! 😉
5
📚 اخبار مهم پایتون امروز 📰

۱. اعلام کاندیداهای هیئت مدیره PSF برای سال ۲۰۲۴:
بنیاد نرم‌افزاری پایتون (PSF) کاندیداهای هیئت مدیره خود برای سال ۲۰۲۴ را اعلام کرد. این افراد نقش مهمی در تعیین مسیر آینده توسعه پایتون و ابتکارات جامعه خواهند داشت. 🌟

۲. معرفی مفسر تعاملی جدید پایتون، PyREPL:
مفسر تعاملی جدیدی به نام PyREPL که با زبان پایتون نوشته شده، معرفی شد. این REPL جدید با امکانات بیشتر و کاربری آسان‌تر طراحی شده و بسیاری از محدودیت‌های مفسر فعلی را برطرف می‌کند. 💻

۳. کنفرانس‌های پیش‌روی پایتون:
چندین کنفرانس پایتون در ماه‌های آینده برگزار می‌شوند، از جمله PyCon روسیه، PyOhio و Django Girls اکوادور. این رویدادها برای مشارکت جامعه و اشتراک‌گذاری دانش اهمیت زیادی دارند. 🌍🎤

۴. توصیه کاخ سفید برای استفاده از زبان‌های امن از نظر حافظه مثل پایتون:
کاخ سفید استفاده از زبان‌های برنامه‌نویسی امن از نظر حافظه، به‌ویژه پایتون، را برای پروژه‌های نرم‌افزاری فدرال توصیه کرده است. 🏛️🔐

۵. تغییرات پیشنهادی در آیین‌نامه‌های PSF:
پرسش‌های متداول مربوط به تغییرات پیشنهادی در آیین‌نامه‌های بنیاد نرم‌افزاری پایتون منتشر شده است که بر شفافیت و بهبود عملکرد بنیاد تمرکز دارد. 📜

۶. انتشار نسخه بتای سوم پایتون 3.13:
نسخه بتای سوم پایتون 3.13 منتشر شد. این نسخه شامل پیش‌نمایش ویژگی‌ها و بهبودهایی است که در نسخه نهایی ارائه خواهد شد. 🆕🔍

۷. جلسه سران زبان پایتون ۲۰۲۴:
در جلسه سران زبان پایتون امسال، موضوعاتی از جمله بهبود ابزار pdb و PyREPL مطرح شدند که تاثیرات مهمی بر توسعه آینده پایتون خواهند داشت. 🛠️📈

[تو کانال ما همیشه به روز باشید]

#پایتون #اخبار_پایتون #تکنولوژی #برنامه_نویسی #PSF
👍3
پارت ۵: لیست‌ها و تاپل‌ها در پایتون 📋🐍

در این پارت، به بررسی دو ساختار داده‌ای پرکاربرد در پایتون می‌پردازیم: لیست‌ها (Lists) و تاپل‌ها (Tuples). این ساختارها به ما کمک می‌کنند تا مجموعه‌ای از داده‌ها را به صورت منظم و قابل دسترس ذخیره و مدیریت کنیم.

۱. لیست‌ها (Lists)

لیست‌ها یکی از انعطاف‌پذیرترین و پرکاربردترین ساختارهای داده‌ای در پایتون هستند. می‌توانیم عناصر مختلف را در یک لیست ذخیره کنیم و به آنها دسترسی داشته باشیم.

تعریف لیست

لیست‌ها با استفاده از کروشه [] تعریف می‌شوند:

my_list = [1, 2, 3, 4, 5]
print(my_list) # خروجی: [1, 2, 3, 4, 5]

افزودن و حذف عناصر

می‌توانیم عناصر جدید به لیست اضافه کنیم یا عناصر موجود را حذف کنیم:

my_list.append(6)   # افزودن عنصر به انتهای لیست
print(my_list) # خروجی: [1, 2, 3, 4, 5, 6]

my_list.remove(3) # حذف اولین وجود عنصر از لیست
print(my_list) # خروجی: [1, 2, 4, 5, 6]

دسترسی به عناصر لیست

می‌توانیم به عناصر لیست با استفاده از ایندکس‌ها دسترسی پیدا کنیم:

first_element = my_list[0]
print(first_element) # خروجی: 1

last_element = my_list[-1]
print(last_element) # خروجی: 6

برش (Slicing)

با استفاده از برش می‌توانیم بخشی از لیست را استخراج کنیم:

sub_list = my_list[1:4]
print(sub_list) # خروجی: [2, 4, 5]

۲. تاپل‌ها (Tuples)

تاپل‌ها مشابه لیست‌ها هستند، با این تفاوت که غیر قابل تغییر (immutable) هستند. این ویژگی باعث می‌شود تا تاپل‌ها سریع‌تر و مطمئن‌تر باشند.

تعریف تاپل

تاپل‌ها با استفاده از پرانتز () تعریف می‌شوند:

my_tuple = (1, 2, 3, 4, 5)
print(my_tuple) # خروجی: (1, 2, 3, 4, 5)

دسترسی به عناصر تاپل

همانند لیست‌ها، می‌توانیم به عناصر تاپل با استفاده از ایندکس‌ها دسترسی پیدا کنیم:

first_element = my_tuple[0]
print(first_element) # خروجی: 1

last_element = my_tuple[-1]
print(last_element) # خروجی: 5

تفاوت‌های اصلی بین لیست‌ها و تاپل‌ها

- قابلیت تغییر: لیست‌ها قابل تغییر هستند (می‌توان عناصر آنها را تغییر داد، افزود یا حذف کرد)، در حالی که تاپل‌ها غیر قابل تغییر هستند.
- کاربردها: تاپل‌ها معمولاً برای داده‌هایی استفاده می‌شوند که نباید تغییر کنند، در حالی که لیست‌ها برای داده‌های متغیر و قابل تغییر مناسب هستند.


تمرین‌ها

1. لیستی بسازید که شامل نام پنج دوست شما باشد و سپس نام دوست ششم خود را به آن اضافه کنید.
2. تاپلی بسازید که شامل شماره‌های مورد علاقه شما باشد و سپس سعی کنید یکی از شماره‌ها را تغییر دهید. چه اتفاقی می‌افتد؟
3. لیستی از اعداد ایجاد کنید و میانگین آنها را محاسبه کنید.

[آموزش های بیشتر کانال ما ]

#پایتون #آموزش_پایتون #برنامه_نویسی #لیست #تاپل #کدنویسی
1👍1
امروز برای شمام نت قطع بوده یا فقط من
👍4👎1
پارت ۶: دیکشنری‌ها و مجموعه‌ها در پایتون 📚🐍

در این پارت، به بررسی دو ساختار داده‌ای مهم و پرکاربرد دیگر در پایتون می‌پردازیم: دیکشنری‌ها (Dictionaries) و مجموعه‌ها (Sets). این ساختارها ابزارهایی قوی برای مدیریت داده‌ها به شکلی موثر و بهینه هستند.

۱. دیکشنری‌ها (Dictionaries)

دیکشنری‌ها ساختارهای داده‌ای هستند که داده‌ها را به صورت جفت‌های کلید-مقدار (key-value pairs) ذخیره می‌کنند. این ویژگی باعث می‌شود تا دیکشنری‌ها برای ذخیره و بازیابی داده‌ها با استفاده از کلید‌ها بسیار مفید باشند.

تعریف دیکشنری

دیکشنری‌ها با استفاده از آکولاد {} تعریف می‌شوند:

my_dict = {"name": "Ali", "age": 25, "city": "Tehran"}
print(my_dict) # خروجی: {'name': 'Ali', 'age': 25, 'city': 'Tehran'}

افزودن و حذف عناصر

می‌توانیم عناصر جدید به دیکشنری اضافه کنیم یا عناصر موجود را حذف کنیم:

my_dict["email"] = "[email protected]"  # افزودن عنصر جدید
print(my_dict) # خروجی: {'name': 'Ali', 'age': 25, 'city': 'Tehran', 'email': '[email protected]'}

del my_dict["age"] # حذف عنصر
print(my_dict) # خروجی: {'name': 'Ali', 'city': 'Tehran', 'email': '[email protected]'}

دسترسی به مقادیر دیکشنری

می‌توانیم به مقادیر دیکشنری با استفاده از کلیدها دسترسی پیدا کنیم:

name = my_dict["name"]
print(name) # خروجی: Ali

متدهای پرکاربرد دیکشنری

دیکشنری‌ها دارای متدهای متعددی هستند که کار با آنها را آسان‌تر می‌کنند:

# استفاده از متد get برای دریافت مقدار با کلید، در صورت عدم وجود کلید مقدار پیش‌فرض بازمی‌گرداند
age = my_dict.get("age", "Unknown")
print(age) # خروجی: Unknown

# دریافت لیست کلیدها و مقادیر
keys = my_dict.keys()
values = my_dict.values()
print(keys) # خروجی: dict_keys(['name', 'city', 'email'])
print(values) # خروجی: dict_values(['Ali', 'Tehran', '[email protected]'])

۲. مجموعه‌ها (Sets)

مجموعه‌ها ساختارهای داده‌ای هستند که تنها شامل عناصر یکتا (غیر تکراری) می‌شوند. این ویژگی باعث می‌شود تا مجموعه‌ها برای انجام عملیات‌های مجموعه‌ای مانند اشتراک، اجتماع و تفاضل بسیار مفید باشند.

تعریف مجموعه

مجموعه‌ها با استفاده از آکولاد {} یا تابع set() تعریف می‌شوند:

my_set = {1, 2, 3, 4, 5}
print(my_set) # خروجی: {1, 2, 3, 4, 5}

my_set = set([1, 2, 3, 4, 5])
print(my_set) # خروجی: {1, 2, 3, 4, 5}

فزودن و حذف عناصر

می‌توانیم عناصر جدید به مجموعه اضافه کنیم یا عناصر موجود را حذف کنیم:

my_set.add(6)   # افزودن عنصر جدید
print(my_set) # خروجی: {1, 2, 3, 4, 5, 6}

my_set.remove(3) # حذف عنصر
print(my_set) # خروجی: {1, 2, 4, 5, 6}

# عملیات‌های مجموعه‌ای

مجموعه‌ها دارای متدهای مختلفی برای انجام عملیات‌های مجموعه‌ای هستند:

set1 = {1, 2, 3}
set2 = {3, 4, 5}

# اجتماع
union_set = set1.union(set2)
print(union_set) # خروجی: {1, 2, 3, 4, 5}

# اشتراک
intersection_set = set1.intersection(set2)
print(intersection_set) # خروجی: {3}

# تفاضل
difference_set = set1.difference(set2)
print(difference_set) # خروجی: {1, 2}

تمرین‌ها

1. یک دیکشنری بسازید که شامل اطلاعات کتاب‌های شما باشد (عنوان، نویسنده، سال انتشار) و سپس یک کتاب جدید به آن اضافه کنید.
2. یک مجموعه شامل شماره‌های مختلف ایجاد کنید و سپس مجموعه‌ای دیگر با شماره‌های متفاوت ایجاد کنید. اشتراک و تفاضل این دو مجموعه را محاسبه کنید.
3. یک دیکشنری شامل نام و سن دوستان خود بسازید و سپس سعی کنید نام دوستی که در دیکشنری وجود ندارد را جستجو کنید.

[آموزش های مفید پایتون اینجاست]

#پایتون #آموزش_پایتون #برنامه_نویسی #دیکشنری #مجموعه #کدنویسی
🥰2
🚀 آموزش کتابخانه TurboGears 🚀

سلام دوستان! امروز می‌خوایم با هم نگاهی به کتابخانه‌ی TurboGears بندازیم. 🤓

🎯 TurboGears چیست؟
TurboGears یک فریم‌ورک قدرتمند برای توسعه وب با زبان پایتون هست که به شما اجازه می‌ده به راحتی اپلیکیشن‌های وب بسازید. 🌐🐍

🔧 نصب TurboGears
ابتدا باید TurboGears رو نصب کنیم. برای این کار از pip استفاده می‌کنیم:

pip install tg.devtools

🚀 ساخت پروژه جدید
برای ایجاد یک پروژه جدید، از دستور زیر استفاده کنید:

gearbox quickstart myproject

این دستور یک پروژه جدید به نام myproject ایجاد می‌کنه. 📁

🔥 اجرای سرور توسعه
برای اجرای سرور توسعه، به دایرکتوری پروژه بروید و دستور زیر رو اجرا کنید:

gearbox serve

حالا می‌تونید به آدرس | https://127.0.0.1:8080 | برید و پروژه‌ی خودتون رو ببینید. 🌐🚀

🛠️ ساخت یک کنترلر ساده
در TurboGears، کنترلرها بخش اصلی پردازش درخواست‌ها هستند. یک کنترلر ساده به این شکل ساخته می‌شه:

from tg import expose, TGController

class RootController(TGController):
@expose()
def index(self):
return "سلام دنیا!"

این کنترلر به درخواست‌های (https://127.0.0.1:8080 ) پاسخ می‌ده و "سلام دنیا!" رو نمایش می‌ده. 🌟

📚 منابع بیشتر
برای یادگیری بیشتر می‌تونید به مستندات رسمی TurboGears مراجعه کنید: [مستندات TurboGears] 📖

امیدوارم این آموزش براتون مفید بوده باشه. 😊 اگر سوالی دارید، حتما بپرسید! 💬

(اموزش کتابخانه های پایتون تو کانال ما)

#TurboGears #Python #WebDevelopment #پایتون #توسعه_وب
👍1
🚀 ساخت برنامه‌ی اعلام ساعت با پایتون و Flask 🚀

سلام دوستان! امروز می‌خوایم با هم یک برنامه ساده‌ی اعلام ساعت با استفاده از پایتون و Flask بسازیم. 🐍

🎯 Flask چیست؟
Flask یک میکرو فریم‌ورک سبک برای توسعه وب با پایتون است که بسیار ساده و قابل انعطاف است. 🌐

🔧 نصب Flask
ابتدا باید Flask رو نصب کنیم. برای این کار از pip استفاده می‌کنیم:

pip install Flask

🚀 ساخت برنامه‌ی اعلام ساعت
یک فایل جدید به نام app.py بسازید و کد زیر رو در اون قرار بدید:

from flask import Flask
from datetime import datetime

app = Flask(__name__)

@app.route('/')
def time():
now = datetime.now()
current_time = now.strftime("%H:%M:%S")
return f"زمان فعلی: {current_time}"

if __name__ == '__main__':
app.run(debug=True)

این کد یک وب‌سرور ساده راه‌اندازی می‌کنه که زمان فعلی رو در صفحه اصلی نمایش می‌ده. 🌐

🔥 اجرای برنامه
برای اجرای برنامه، به دایرکتوری که فایل app.py رو ساختید برید و دستور زیر رو اجرا کنید:

python app.py

حالا می‌تونید به آدرس https://127.0.0.1:5000 برید و زمان فعلی رو ببینید. 🌟

📚 منابع بیشتر
برای یادگیری بیشتر می‌تونید به مستندات رسمی Flask مراجعه کنید: [مستندات Flask]📖

(کانال ما)

#Flask #Python #WebDevelopment #پایتون #توسعه_وب #اعلام_ساعت
👍2
پارت ۸: توابع در پایتون 🛠️🐍

در این پارت، به بررسی توابع (Functions) در پایتون می‌پردازیم. توابع یکی از مهم‌ترین مفاهیم در برنامه‌نویسی هستند که به ما امکان می‌دهند تا کدهای خود را به بخش‌های کوچکتر و قابل استفاده مجدد تقسیم کنیم.

۱. تعریف توابع

توابع به ما اجازه می‌دهند تا مجموعه‌ای از دستورات را با نامی مشخص تعریف کنیم و سپس با فراخوانی نام تابع، آن دستورات را اجرا کنیم.

ساختار تعریف تابع

یک تابع با استفاده از کلمه کلیدی def تعریف می‌شود و سپس نام تابع و پرانتزها قرار می‌گیرند. داخل پرانتزها می‌توانیم پارامترهای تابع را مشخص کنیم.

def my_function():
# دستورات اجرایی
print("Hello, World!")

فراخوانی تابع

برای فراخوانی یک تابع، کافیست نام آن را به همراه پرانتزها بنویسیم:

my_function()

توضیح: در این مثال، تابع my_function تعریف شده که یک پیام را چاپ می‌کند. سپس این تابع فراخوانی شده و پیام مربوطه چاپ می‌شود.

خروجی:
Hello, World!

۲. پارامترها و آرگومان‌ها

توابع می‌توانند پارامترهایی بپذیرند که به آنها اجازه می‌دهد با داده‌های مختلف کار کنند.

تعریف تابع با پارامتر

در اینجا، تابعی تعریف می‌کنیم که دو پارامتر می‌پذیرد و حاصل جمع آنها را چاپ می‌کند:

def add(a, b):
result = a + b
print("Result:", result)

فراخوانی تابع با آرگومان‌ها

برای فراخوانی تابع با مقادیر مختلف، کافیست آرگومان‌ها را در پرانتزها قرار دهیم:

add(3, 5)

توضیح: در این مثال، تابع add دو پارامتر a و b می‌پذیرد. سپس حاصل جمع این دو مقدار را محاسبه و چاپ می‌کند.

خروجی:
Result: 8

۳. بازگشت مقادیر از تابع

توابع می‌توانند مقادیری را به فراخوانی کننده بازگردانند با استفاده از کلمه کلیدی return.

تعریف تابع با مقدار بازگشتی

در اینجا، تابعی تعریف می‌کنیم که حاصل جمع دو عدد را محاسبه کرده و بازمی‌گرداند:

def add(a, b):
return a + b

استفاده از مقدار بازگشتی

مقدار بازگشتی تابع را می‌توان در متغیری ذخیره کرده و از آن استفاده کرد:

result = add(3, 5)
print("Result:", result)

توضیح: در این مثال، تابع add مقدار حاصل جمع دو عدد را بازمی‌گرداند. این مقدار در متغیر result ذخیره شده و سپس چاپ می‌شود.

خروجی:
Result: 8

۴. توابع با تعداد آرگومان‌های متغیر

پایتون امکان تعریف توابع با تعداد آرگومان‌های متغیر را نیز فراهم می‌کند. این ویژگی با استفاده از *args و **kwargs قابل دستیابی است.

استفاده از args

در اینجا، تابعی تعریف می‌کنیم که تعداد نامحدودی آرگومان عددی می‌پذیرد و مجموع آنها را محاسبه می‌کند:

def add(*args):
result = sum(args)
return result

فراخوانی تابع با تعداد آرگومان‌های مختلف

print(add(1, 2, 3))         # خروجی: 6
print(add(4, 5, 6, 7, 8)) # خروجی: 30

توضیح: در این مثال، تابع add با استفاده از *args تعریف شده و می‌تواند تعداد نامحدودی آرگومان بپذیرد. سپس مجموع این آرگومان‌ها محاسبه و بازگردانده می‌شود.

۵. توابع با پارامترهای کلید-مقدار

با استفاده از **kwargs می‌توان توابعی تعریف کرد که تعداد نامحدودی پارامتر کلید-مقدار بپذیرند.

استفاده از kwargs

در اینجا، تابعی تعریف می‌کنیم که اطلاعات مختلف یک کاربر را به صورت پارامترهای کلید-مقدار می‌پذیرد و چاپ می‌کند:

def print_user_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")

فراخوانی تابع با پارامترهای کلید-مقدار

print_user_info(name="Ali", age=25, city="Tehran")

توضیح: در این مثال، تابع print_user_info با استفاده از **kwargs تعریف شده و می‌تواند تعداد نامحدودی پارامتر کلید-مقدار بپذیرد. سپس این اطلاعات چاپ می‌شود.

خروجی:
name: Ali
age: 25
city: Tehran


تمرین‌ها

1. تابعی بنویسید که دو عدد را گرفته و مقدار بزرگتر را بازگرداند.


   def max_number(a, b):
if a > b:
return a
else:
return b

2. تابعی بنویسید که یک لیست از اعداد را گرفته و میانگین آنها را محاسبه و بازگرداند.


   def average(numbers):
return sum(numbers) / len(numbers)
3. تابعی بنویسید که نام و سن چند کاربر را گرفته و نام کاربرانی که سن آنها بالای ۱۸ است را چاپ کند.


   def print_adults(**kwargs):
for name, age in kwargs.items():
if age > 18:
print(name)

(بهترین اموزش هارو توی کانال ما ببینید)

#پایتون #آموزش_پایتون #برنامه_نویسی #توابع #کدنویسی
👍1
نظرتون چیه درباره این سری آموزش؟
پارت ۷: حلقه‌ها در پایتون 🔄🐍

در این پارت، به بررسی حلقه‌ها (Loops) در پایتون می‌پردازیم. حلقه‌ها ابزارهایی قدرتمند هستند که به ما اجازه می‌دهند تا مجموعه‌ای از دستورات را چندین بار اجرا کنیم. دو نوع حلقه اصلی در پایتون وجود دارد: for و while.

۱. حلقه for

حلقه‌های for برای تکرار روی مجموعه‌ای از عناصر مانند لیست‌ها، تاپل‌ها، دیکشنری‌ها و رشته‌ها استفاده می‌شوند.

ساختار حلقه for

حلقه for با استفاده از یک متغیر تکرارکننده (iterator) و یک مجموعه (iterable) عمل می‌کند. برای هر عنصر در مجموعه، حلقه for بدنه حلقه را یک بار اجرا می‌کند.

for item in iterable:
# دستورات اجرایی

مثال ساده

در این مثال، عناصر یک لیست را با استفاده از حلقه for چاپ می‌کنیم:

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)

توضیح: در اینجا، لیستی به نام fruits داریم که شامل سه عنصر است. حلقه for به ازای هر عنصر در این لیست، مقدار آن عنصر را چاپ می‌کند.

خروجی:
apple
banana
cherry

استفاده از range

حلقه for می‌تواند با استفاده از تابع range برای ایجاد یک دنباله از اعداد استفاده شود. range یک دنباله از اعداد را ایجاد می‌کند که می‌تواند در حلقه‌ها استفاده شود.

for i in range(5):
print(i)

توضیح: تابع range(5) دنباله‌ای از اعداد ۰ تا ۴ ایجاد می‌کند. حلقه for این اعداد را تکرار کرده و هر عدد را چاپ می‌کند.

خروجی:
0
1
2
3
4

۲. حلقه while

حلقه‌های while تا زمانی که شرط مشخصی درست باشد، مجموعه‌ای از دستورات را تکرار می‌کنند.

ساختار حلقه while

حلقه while با یک شرط منطقی عمل می‌کند. تا زمانی که این شرط درست باشد، بدنه حلقه اجرا می‌شود.

while condition:
# دستورات اجرایی

مثال ساده

در این مثال، یک شمارش معکوس از ۵ تا ۱ را با استفاده از حلقه while انجام می‌دهیم:

count = 5
while count > 0:
print(count)
count -= 1

توضیح: متغیر count با مقدار اولیه ۵ تعریف شده است. حلقه while تا زمانی که count بزرگتر از ۰ باشد، بدنه حلقه را اجرا می‌کند و مقدار count را در هر تکرار کاهش می‌دهد و چاپ می‌کند.

خروجی:
5
4
3
2
1

۳. کنترل جریان در حلقه‌ها

برای کنترل جریان اجرای دستورات در حلقه‌ها، از دستورات break و continue استفاده می‌شود.

دستور break

دستور break برای خروج فوری از حلقه استفاده می‌شود.

for i in range(10):
if i == 5:
break
print(i)

توضیح: در این مثال، حلقه for اعداد ۰ تا ۹ را تکرار می‌کند. زمانی که مقدار i برابر با ۵ می‌شود، دستور break اجرا شده و حلقه متوقف می‌شود.

خروجی:
0
1
2
3
4

دستور continue

دستور continue برای رد کردن ادامه تکرار جاری و رفتن به تکرار بعدی استفاده می‌شود.

for i in range(10):
if i % 2 == 0:
continue
print(i)

توضیح: در این مثال، حلقه for اعداد ۰ تا ۹ را تکرار می‌کند. اگر مقدار i زوج باشد (i % 2 == 0)، دستور continue اجرا شده و باقی دستورات حلقه نادیده گرفته می‌شود و به تکرار بعدی می‌رود. در نتیجه فقط اعداد فرد چاپ می‌شوند.

خروجی:
1
3
5
7
9

۴. حلقه‌های تو در تو (Nested Loops)

می‌توانیم از حلقه‌های تو در تو برای انجام تکرارهای چندگانه استفاده کنیم:

for i in range(3):
for j in range(2):
print(f"i: {i}, j: {j}")

توضیح: در اینجا، یک حلقه for تو در تو داریم. حلقه بیرونی ۳ بار تکرار می‌شود و هر بار که حلقه بیرونی تکرار می‌شود، حلقه داخلی ۲ بار تکرار می‌شود. بنابراین مجموعاً ۶ بار بدنه حلقه داخلی اجرا می‌شود و مقادیر i و j چاپ می‌شوند.

خروجی:
i: 0, j: 0
i: 0, j: 1
i: 1, j: 0
i: 1, j: 1
i: 2, j: 0
i: 2, j: 1

تمرین‌ها

1. یک لیست از اعداد ایجاد کنید و مجموع اعداد موجود در آن لیست را با استفاده از حلقه for محاسبه کنید.


    numbers = [1, 2, 3, 4, 5]
total = 0
for number in numbers:
total += number
print("Total:", total)

توضیح: لیستی از اعداد ایجاد شده است. حلقه for هر عدد را به متغیر total اضافه می‌کند و در نهایت مجموع اعداد چاپ می‌شود.

2. از یک حلقه while استفاده کنید تا اعداد زوج بین ۱ تا ۲۰ را چاپ کنید.