پارت ۱۱: مفاهیم پایه برنامهنویسی شیءگرا (OOP) در پایتون 🐍📘
در این پارت، به مفاهیم پایه برنامهنویسی شیءگرا (Object-Oriented Programming یا به اختصار OOP) در پایتون میپردازیم. OOP یک پارادایم برنامهنویسی است که از اشیاء و کلاسها برای ساختاردهی و مدیریت کد استفاده میکند.
۱. تعریف کلاس و شیء
کلاسها قالبی برای ایجاد اشیاء هستند. یک کلاس میتواند شامل متغیرها (ویژگیها) و توابع (روشها) باشد.
تعریف یک کلاس ساده
توضیح: در این مثال، کلاسی به نام
۲. سازندهها (Constructors)
سازندهها متدی هستند که هنگام ایجاد یک شیء از کلاس فراخوانی میشوند. در پایتون، سازنده با in
استفاده از سازنده
توضinit
۳. متدها (Methods)
متدها توابعی هستند که در داخل کلاس تعریف میشوند و میتوانند به ویژگیها و دیگر متدهای کلاس دسترسی داشته باشند.
تعریف متد
توضیح: متد
۴. وراثت (Inheritance)
وراثت به شما اجازه میدهد تا یک کلاس جدید ایجاد کنید که تمام ویژگیها و متدهای یک کلاس دیگر را به ارث میبرد.
تعریف وراثت
توضیح: کلاس
۵. چندریختی (Polymorphism)
چندریختی به شما اجازه میدهد تا از یک رابط یکسان برای انواع مختلف اشیاء استفاده کنید.
تعریف چندریختی
توضیح: در این مثال، تابع
۶. مخفیسازی داده (Encapsulation)
مخفیسازی داده به شما اجازه میدهد تا دسترسی به ویژگیهای یک کلاس را محدود کنید.
تعریف مخفیسازی داده
توضیح: در name و یژگیهای
چند تا مثال هم ببینیم👇
  
  در این پارت، به مفاهیم پایه برنامهنویسی شیءگرا (Object-Oriented Programming یا به اختصار OOP) در پایتون میپردازیم. OOP یک پارادایم برنامهنویسی است که از اشیاء و کلاسها برای ساختاردهی و مدیریت کد استفاده میکند.
۱. تعریف کلاس و شیء
کلاسها قالبی برای ایجاد اشیاء هستند. یک کلاس میتواند شامل متغیرها (ویژگیها) و توابع (روشها) باشد.
تعریف یک کلاس ساده
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
def bark(self):
print(f"{self.name} is barking.")
# ایجاد یک شیء از کلاس
my_dog = Dog("Buddy", 3)
print(my_dog.name) # خروجی: Buddy
my_dog.bark() # خروجی: Buddy is barking.
توضیح: در این مثال، کلاسی به نام
Dog تعریف کردهایم که دارای ویژگیهای name و age و یک روش به نام bark است. سپس شیئی از این کلاس ایجاد کرده و از روشهای آن استفاده کردهایم.۲. سازندهها (Constructors)
سازندهها متدی هستند که هنگام ایجاد یک شیء از کلاس فراخوانی میشوند. در پایتون، سازنده با in
itit__ شناخته میشود.استفاده از سازنده
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
# ایجاد یک شیء با استفاده از سازنده
my_dog = Dog("Buddy", 3)
print(my_dog.name) # خروجی: Buddy
توضinit
__init__ به عنوان سازنده در هنگام ایجاد شیء فراخوانی میشود و ویژگیهای name و age را مقداردهی میکند.۳. متدها (Methods)
متدها توابعی هستند که در داخل کلاس تعریف میشوند و میتوانند به ویژگیها و دیگر متدهای کلاس دسترسی داشته باشند.
تعریف متد
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
def bark(self):
print(f"{self.name} is barking.")
# استفاده از متد
my_dog = Dog("Buddy", 3)
my_dog.bark() # خروجی: Buddy is barking.
توضیح: متد
bark در کلاس Dog تعریف شده و از ویژگی name استفاده میکند.۴. وراثت (Inheritance)
وراثت به شما اجازه میدهد تا یک کلاس جدید ایجاد کنید که تمام ویژگیها و متدهای یک کلاس دیگر را به ارث میبرد.
تعریف وراثت
class Animal:
def __init__(self, name):
self.name = name
def eat(self):
print(f"{self.name} is eating.")
class Dog(Animal):
def bark(self):
print(f"{self.name} is barking.")
# استفاده از وراثت
my_dog = Dog("Buddy")
my_dog.eat() # خروجی: Buddy is eating.
my_dog.bark() # خروجی: Buddy is barking.
توضیح: کلاس
Dog از کلاس Animal وراثت میبرد و به ویژگیها و متدهای آن دسترسی دارد.۵. چندریختی (Polymorphism)
چندریختی به شما اجازه میدهد تا از یک رابط یکسان برای انواع مختلف اشیاء استفاده کنید.
تعریف چندریختی
class Cat(Animal):
def meow(self):
print(f"{self.name} is meowing.")
# تعریف تابعی که از چندریختی استفاده میکند
def make_sound(animal):
if isinstance(animal, Dog):
animal.bark()
elif isinstance(animal, Cat):
animal.meow()
# استفاده از چندریختی
my_dog = Dog("Buddy")
my_cat = Cat("Kitty")
make_sound(my_dog) # خروجی: Buddy is barking.
make_sound(my_cat) # خروجی: Kitty is meowing.
توضیح: در این مثال، تابع
make_sound از چندریختی استفاده میکند تا با اشیاء مختلف از کلاسهای Dog و Cat تعامل داشته باشد.۶. مخفیسازی داده (Encapsulation)
مخفیسازی داده به شما اجازه میدهد تا دسترسی به ویژگیهای یک کلاس را محدود کنید.
تعریف مخفیسازی داده
class Dog:
def __init__(self, name, age):
self.__name = name # ویژگی خصوصی
self.__age = age # ویژگی خصوصی
def get_name(self):
return self.__name
def get_age(self):
return self.__age
# استفاده از مخفیسازی داده
my_dog = Dog("Buddy", 3)
print(my_dog.get_name()) # خروجی: Buddy
print(my_dog.get_age()) # خروجی: 3
توضیح: در name و یژگیهای
__name و __age خصوصی هستند و فقط از طریق متدهای get_name و get_age قابل دسترسی هستند.چند تا مثال هم ببینیم👇
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍4
  1. یک کلاس به نام 
  
2. یک کلاس به نام
  
3. یک کلاس به نام
  
(آموزش های بیشتر تو کانال ما)
#پایتون #آموزش_پایتون #برنامه_نویسی #شیء_گرایی #OOP #کلاس #وراثت #چندریختی #مخفی_سازی_داده
  
  Car ایجاد کنید که شامل ویژگیهای make, model و year باشد. یک متد به نام start تعریف کنید که پیامی مبنی بر روشن شدن خودرو چاپ کند. سپس شیئی از این کلاس ایجاد کرده و متد start را فراخوانی کنید.class Car:
def __init__(self, make, model, year):
self.make = make
self.model = model
self.year = year
def start(self):
print(f"The {self.year} {self.make} {self.model} is starting.")
my_car = Car("Toyota", "Corolla", 2020)
my_car.start() # خروجی: The 2020 Toyota Corolla is starting.
2. یک کلاس به نام
Person ایجاد کنید که شامل ویژگیهای name و age باشد. یک متد به نام greet تعریف کنید که پیامی شامل نام و سن فرد چاپ کند. سپس دو شیء از این کلاس ایجاد کرده و متد greet را برای هر کدام فراخوانی کنید.class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
print(f"Hello, my name is {self.name} and I am {self.age} years old.")
person1 = Person("Ali", 25)
person2 = Person("Sara", 30)
person1.greet() # خروجی: Hello, my name is Ali and I am 25 years old.
person2.greet() # خروجی: Hello, my name is Sara and I am 30 years old.
3. یک کلاس به نام
Employee ایجاد کنید که شامل ویژگیهای name, position و salary باشد. یک کلاس دیگر به نام Manager ایجاد کنید که از Employee وراثت ببرد و یک متد به نام promote داشته باشد که حقوق کارمند را افزایش دهد. سپس شیئی از کلاس Manager ایجاد کرده و متد promote را فراخوانی کنید.class Employee:
def __init__(self, name, position, salary):
self.name = name
self.position = position
self.salary = salary
class Manager(Employee):
def promote(self, increase):
self.salary += increase
print(f"{self.name} has been promoted. New salary: {self.salary}")
manager = Manager("Ali", "Manager", 5000)
manager.promote(1000) # خروجی: Ali has been promoted. New salary: 6000
(آموزش های بیشتر تو کانال ما)
#پایتون #آموزش_پایتون #برنامه_نویسی #شیء_گرایی #OOP #کلاس #وراثت #چندریختی #مخفی_سازی_داده
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍4
  پارت ۱۲: وراثت و چندریختی در پایتون 🐍👨💻
در این پارت به بررسی دو مفهوم کلیدی در برنامهنویسی شیءگرا (OOP) میپردازیم: وراثت (Inheritance) و چندریختی (Polymorphism). این دو مفهوم به شما کمک میکنند تا کدهای قابل نگهداری و توسعهپذیرتری بنویسید.
۱. وراثت (Inheritance)
وراثت به شما اجازه میدهد تا یک کلاس جدید را بر اساس کلاس موجود ایجاد کنید. کلاس جدید (کلاس فرزند) میتواند تمام ویژگیها و متدهای کلاس موجود (کلاس والد) را به ارث ببرد و همچنین ویژگیها و متدهای جدیدی را به آن اضافه کند.
مثال ساده از وراثت
توضیح: در این مثال، کلاس
۲. چندریختی (Polymorphism)
چندریختی به شما اجازه میدهد تا از یک رابط یکسان برای انواع مختلف اشیاء استفاده کنید. این بدان معناست که متدهای یکسان در کلاسهای مختلف میتوانند رفتارهای متفاوتی داشته باشند.
مثال چندریختی
توضیح: در این مثال، تابع
۳. وراثت چندگانه (Multiple Inheritance)
پایتون از وراثت چندگانه پشتیبانی میکند، یعنی یک کلاس میتواند از بیش از یک کلاس والد وراثت ببرد.
مثال وراثت چندگانه
توضیح: در این مثال، کلاس
👇اینم چند تا مثال
1. یک کلاس به نام
  
2. یک کلاس به نام
در این پارت به بررسی دو مفهوم کلیدی در برنامهنویسی شیءگرا (OOP) میپردازیم: وراثت (Inheritance) و چندریختی (Polymorphism). این دو مفهوم به شما کمک میکنند تا کدهای قابل نگهداری و توسعهپذیرتری بنویسید.
۱. وراثت (Inheritance)
وراثت به شما اجازه میدهد تا یک کلاس جدید را بر اساس کلاس موجود ایجاد کنید. کلاس جدید (کلاس فرزند) میتواند تمام ویژگیها و متدهای کلاس موجود (کلاس والد) را به ارث ببرد و همچنین ویژگیها و متدهای جدیدی را به آن اضافه کند.
مثال ساده از وراثت
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
pass
class Dog(Animal):
def speak(self):
return f"{self.name} says Woof!"
class Cat(Animal):
def speak(self):
return f"{self.name} says Meow!"
# استفاده از کلاسهای فرزند
dog = Dog("Buddy")
cat = Cat("Kitty")
print(dog.speak()) # خروجی: Buddy says Woof!
print(cat.speak()) # خروجی: Kitty says Meow!
توضیح: در این مثال، کلاس
Dog و Cat از کلاس Animal وراثت میبرند و متد speak را بازنویسی میکنند.۲. چندریختی (Polymorphism)
چندریختی به شما اجازه میدهد تا از یک رابط یکسان برای انواع مختلف اشیاء استفاده کنید. این بدان معناست که متدهای یکسان در کلاسهای مختلف میتوانند رفتارهای متفاوتی داشته باشند.
مثال چندریختی
class Bird(Animal):
def speak(self):
return f"{self.name} says Tweet!"
# تعریف تابعی که از چندریختی استفاده میکند
def animal_sound(animal):
print(animal.speak())
# استفاده از چندریختی
dog = Dog("Buddy")
cat = Cat("Kitty")
bird = Bird("Tweety")
animal_sound(dog) # خروجی: Buddy says Woof!
animal_sound(cat) # خروجی: Kitty says Meow!
animal_sound(bird) # خروجی: Tweety says Tweet!
توضیح: در این مثال، تابع
animal_sound از چندریختی استفاده میکند تا با اشیاء مختلف از کلاسهای Dog, Cat و Bird تعامل داشته باشد.۳. وراثت چندگانه (Multiple Inheritance)
پایتون از وراثت چندگانه پشتیبانی میکند، یعنی یک کلاس میتواند از بیش از یک کلاس والد وراثت ببرد.
مثال وراثت چندگانه
class Swimmable:
def swim(self):
print("I can swim!")
class Flyable:
def fly(self):
print("I can fly!")
class Duck(Animal, Swimmable, Flyable):
def speak(self):
return f"{self.name} says Quack!"
# استفاده از وراثت چندگانه
duck = Duck("Donald")
duck.speak() # خروجی: Donald says Quack!
duck.swim() # خروجی: I can swim!
duck.fly() # خروجی: I can fly!
توضیح: در این مثال، کلاس
Duck از کلاسهای Animal, Swimmable و Flyable وراثت میبرد و به تمامی ویژگیها و متدهای آنها دسترسی دارد.👇اینم چند تا مثال
1. یک کلاس به نام
Vehicle ایجاد کنید که شامل ویژگیهای brand و model باشد. سپس دو کلاس Car و Bike ایجاد کنید که از Vehicle وراثت ببرند و هرکدام یک متد به نام start_engine داشته باشند که پیامی مربوط به روشن شدن موتور را چاپ کند.class Vehicle:
def __init__(self, brand, model):
self.brand = brand
self.model = model
class Car(Vehicle):
def start_engine(self):
print(f"The engine of the {self.brand} {self.model} car is starting.")
class Bike(Vehicle):
def start_engine(self):
print(f"The engine of the {self.brand} {self.model} bike is starting.")
car = Car("Toyota", "Corolla")
bike = Bike("Yamaha", "MT-07")
car.start_engine() # خروجی: The engine of the Toyota Corolla car is starting.
bike.start_engine() # خروجی: The engine of the Yamaha MT-07 bike is starting.
2. یک کلاس به نام
Shape ایجاد کنید که شامل متدی به نام area باشد. سپس دو کلاس Rectangle و Circle ایجاد کنید که از Shape وراثت ببرند و متد area را برای محاسبه مساحت هر شکل بازنویسی کنند.👍5
  class Shape:
def area(self):
pass
class Rectangle(Shape):
init__init__(self, width, height):
self.width = width
self.height = height
def area(self):
return self.width * self.height
class Circle(Shape):
init__init__(self, radius):
self.radius = radius
def area(self):
import math
return math.pi * self.radius ** 2
rect = Rectangle(4, 5)
circ = Circle(3)
print(rect.area()) # خروجی: 20
print(circ.area()) # خروجی: 28.274333882308138
3. یک کلاس به نام
Employee ایجاد کنید که شامل ویژگیهای name و salary باشد. سپس یک کلاس به نام Manager ایجاد کنید که از Employee وراثت ببرد و یک متد به نام give_raise داشته باشد که حقوق کارمند را افزایش دهد.class Employee:
def init(self, name, salary):
self.name = name
self.salary = salary
class Manager(Employee):
def give_raise(self, amount):
self.salary += amount
print(f"{self.name} has been given a raise. New salary: {self.salary}")
manager = Manager("Ali", 5000)
manager.give_raise(1000) # خروجی: Ali has been given a raise. New salary: 6000
[اینجا کلیک کن تا بیشتر یاد بگیری]
#پایتون #آموزش_پایتون #برنامه_نویسی #وراثت #چندریختی #OOP #Inheritance #Polymorphism
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍5
  آموزش استفاده از ماژول Scrapy 🕷
Scrapy یکی از قدرتمندترین ماژولهای پایتون برای وب اسکرپینگ است. این ابزار عالی به شما کمک میکند تا دادهها را از وبسایتها استخراج کنید. 🚀
وب اسکرپینگ به فرآیند استخراج اطلاعات از وبسایتها گفته میشود که معمولاً به صورت خودکار انجام میشود. Scrapy این کار را بسیار آسان و کارآمد میکند.
مرحله 1: نصب Scrapy 🛠
ابتدا باید این ماژول را نصب کنید. میتوانید از دستور زیر استفاده کنید:
این دستور Scrapy را روی سیستم شما نصب میکند.
مرحله 2: ایجاد پروژه Scrapy 📁
یک پروژه جدید ایجاد کنید:
به جای
مرحله 3: ایجاد Spider 🕸
به دایرکتوری پروژه بروید و یک Spider جدید ایجاد کنید:
این دستور یک Spider با نام
مرحله 4: نوشتن کد Spider ✍️
فایل
- import scrapy: ماژول Scrapy را وارد میکند.
- name: نام Spider که باید یکتا باشد.
- start_urls: لیستی از URL هایی که Spider باید از آنها شروع به کار کند.
- parse: متدی که برای پردازش پاسخ از URL های شروع استفاده میشود.
- response.css('title'): انتخاب عنوان صفحه با استفاده از CSS Selector.
- yield: استخراج و بازگشت دادهها.
مرحله 5: اجرای Spider 🎬
حالا میتوانید Spider خود را اجرا کنید و دادهها را استخراج کنید:
این دستور Spider را اجرا کرده و دادههای استخراج شده را در یک فایل JSON ذخیره میکند.
نکات تکمیلی:
- CSS Selectors: برای انتخاب عناصر HTML از CSS Selectors استفاده کنید.
- XPath: میتوانید از XPath نیز برای انتخاب عناصر استفاده کنید.
- Pipelines: برای پردازش و ذخیرهسازی دادههای استخراج شده از Pipelines استفاده کنید.
استفاده از Scrapy میتواند استخراج دادهها را به شدت ساده و کارآمد کند. امیدوارم این آموزش برای شما مفید باشد! 😊
(کانال تلگرامی ما)
#Python #Scrapy #وب_اسکرپینگ #آموزش #برنامه_نویسی
  
  Scrapy یکی از قدرتمندترین ماژولهای پایتون برای وب اسکرپینگ است. این ابزار عالی به شما کمک میکند تا دادهها را از وبسایتها استخراج کنید. 🚀
وب اسکرپینگ به فرآیند استخراج اطلاعات از وبسایتها گفته میشود که معمولاً به صورت خودکار انجام میشود. Scrapy این کار را بسیار آسان و کارآمد میکند.
مرحله 1: نصب Scrapy 🛠
ابتدا باید این ماژول را نصب کنید. میتوانید از دستور زیر استفاده کنید:
pip install scrapy
این دستور Scrapy را روی سیستم شما نصب میکند.
مرحله 2: ایجاد پروژه Scrapy 📁
یک پروژه جدید ایجاد کنید:
scrapy startproject myproject
به جای
myproject نام پروژه خود را وارد کنید. این دستور ساختار اولیه پروژه Scrapy را ایجاد میکند.مرحله 3: ایجاد Spider 🕸
به دایرکتوری پروژه بروید و یک Spider جدید ایجاد کنید:
cd myproject
scrapy genspider example example.com
این دستور یک Spider با نام
example ایجاد میکند که وبسایت example.com را هدف قرار میدهد.مرحله 4: نوشتن کد Spider ✍️
فایل
example.py را باز کنید و کد Spider خود را بنویسید. این یک مثال ساده است:import scrapy
class ExampleSpider(scrapy.Spider):
name = "example" # نام Spider
start_urls = [
'https://example.com', # URL شروع
]
def parse(self, response):
for title in response.css('title'): # انتخاب عنوان صفحه با استفاده از CSS Selector
yield {'title': title.get()} # استخراج عنوان و ذخیره آن
- import scrapy: ماژول Scrapy را وارد میکند.
- name: نام Spider که باید یکتا باشد.
- start_urls: لیستی از URL هایی که Spider باید از آنها شروع به کار کند.
- parse: متدی که برای پردازش پاسخ از URL های شروع استفاده میشود.
- response.css('title'): انتخاب عنوان صفحه با استفاده از CSS Selector.
- yield: استخراج و بازگشت دادهها.
مرحله 5: اجرای Spider 🎬
حالا میتوانید Spider خود را اجرا کنید و دادهها را استخراج کنید:
scrapy crawl example -o output.json
این دستور Spider را اجرا کرده و دادههای استخراج شده را در یک فایل JSON ذخیره میکند.
نکات تکمیلی:
- CSS Selectors: برای انتخاب عناصر HTML از CSS Selectors استفاده کنید.
- XPath: میتوانید از XPath نیز برای انتخاب عناصر استفاده کنید.
- Pipelines: برای پردازش و ذخیرهسازی دادههای استخراج شده از Pipelines استفاده کنید.
استفاده از Scrapy میتواند استخراج دادهها را به شدت ساده و کارآمد کند. امیدوارم این آموزش برای شما مفید باشد! 😊
(کانال تلگرامی ما)
#Python #Scrapy #وب_اسکرپینگ #آموزش #برنامه_نویسی
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
  آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزش استفاده از کلاسها برای پیادهسازی الگوریتم مرتبسازی سریع (QuickSort) 📚
مرتبسازی سریع (QuickSort) یکی از محبوبترین و کارآمدترین الگوریتمهای مرتبسازی است. در این آموزش، نحوه پیادهسازی این الگوریتم با استفاده از کلاسها در پایتون را به شما نشان میدهیم. 🚀
مرحله 1: تعریف کلاس QuickSort 🧩
ابتدا کلاس
initit
- تعریف آرایه: یک آرایه نمونه برای مرتبسازی.
- ایجاد نمونه: یک نمونه از کلاس
- مرتبسازی: فراخوانی متد
- نمایش نتیجه: نمایش آرایه مرتب شده.
توضیحات:
1. تعریف کلاس: کلاس
2. متد سازنده: مinitit__
استفاده از کلاسها در پایتون میتواند برنامهنویسی شیءگرا را سادهتر و قابل مدیریتتر کند. امیدوارم این آموزش برای شما مفید باشد! 😊
(آموزش بیشتر کانال ما)
#Python #QuickSort #آموزش #برنامه_نویسی #مرتبسازی
  
  مرتبسازی سریع (QuickSort) یکی از محبوبترین و کارآمدترین الگوریتمهای مرتبسازی است. در این آموزش، نحوه پیادهسازی این الگوریتم با استفاده از کلاسها در پایتون را به شما نشان میدهیم. 🚀
مرحله 1: تعریف کلاس QuickSort 🧩
ابتدا کلاس
QuickSort را تعریف میکنیم که شامل متدهای مختلف برای مرتبسازی است.class QuickSort:
def __init__(self, array):
self.array = array # آرایهای که باید مرتب شود
def sort(self):
self._quick_sort(0, len(self.array) - 1) # فراخوانی متد مرتبسازی سریع
return self.array # بازگشت آرایه مرتب شده
def _quick_sort(self, low, high):
if low < high:
pivot_index = self._partition(low, high) # پیدا کردن نقطه محوری
self._quick_sort(low, pivot_index - 1) # مرتبسازی بخش چپ از نقطه محوری
self._quick_sort(pivot_index + 1, high) # مرتبسازی بخش راست از نقطه محوری
def _partition(self, low, high):
pivot = self.array[high] # انتخاب عنصر پایانی به عنوان نقطه محوری
i = low - 1 # اندیس اولین عنصر کوچکتر از نقطه محوری
for j in range(low, high):
if self.array[j] <= pivot:
i += 1
self.array[i], self.array[j] = self.array[j], self.array[i] # تعویض عناصر
self.array[i + 1], self.array[high] = self.array[high], self.array[i + 1] # تعویض نقطه محوری با عنصر در جایگاه i+1
return i + 1
initit
__: متد سازنده که آرایهای که باید مرتب شود را دریافت میکند.
- sort: متدی که مرتبسازی را شروع کرده و آرایه مرتب شده را باز میگرداند.
- _quick_sort: متد خصوصی برای اجرای الگوریتم مرتبسازی سریع.
- _partition: متد خصوصی برای تقسیم آرایه به دو بخش بر اساس نقطه محوری.
مرحله 2: استفاده از کلاس QuickSort 📝
حالا با استفاده از کلاس QuickSort، آرایهای را مرتب میکنیم:nameme__ mainin__":
array = [10, 7, 8, 9, 1, 5] # آرایه نمونه
sorter = QuickSort(array) # ایجاد نمونهای از کلاس QuickSort
sorted_array = sorter.sort() # مرتبسازی آرایه
print("Sorted array:", sorted_array) # نمایش آرایه مرتب شده
- تعریف آرایه: یک آرایه نمونه برای مرتبسازی.
- ایجاد نمونه: یک نمونه از کلاس
QuickSort با استفاده از آرایه ورودی.- مرتبسازی: فراخوانی متد
sort برای مرتبسازی آرایه.- نمایش نتیجه: نمایش آرایه مرتب شده.
توضیحات:
1. تعریف کلاس: کلاس
QuickSort را تعریف کردیم که شامل متدهای مختلف برای مرتبسازی است.2. متد سازنده: مinitit__
 آرایهای که باید مرتب شود را دریافت میکند.
3. متد sort: متد sort عملیات مرتبسازی را شروع کرده و آرایه مرتب شده را باز میگرداند.
4. متدهای خصوصی: متدهای _quick_sort و _partition برای اجرای الگوریتم مرتبسازی سریع به کار میروند.
5. استفاده از کلاس: یک نمونه از کلاس QuickSort` ایجاد کرده و آرایه را مرتب کردیم.استفاده از کلاسها در پایتون میتواند برنامهنویسی شیءگرا را سادهتر و قابل مدیریتتر کند. امیدوارم این آموزش برای شما مفید باشد! 😊
(آموزش بیشتر کانال ما)
#Python #QuickSort #آموزش #برنامه_نویسی #مرتبسازی
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
❤2
  آموزش کامل بلاکها در پایتون 🐍
بلاکها (Blocks) در پایتون، بخشهای کدی هستند که با استفاده از تورفتگی (Indentation) مشخص میشوند. بلاکها معمولا در ساختارهای کنترلی، حلقهها، تعریف توابع و کلاسها استفاده میشوند. در این آموزش، با مفاهیم و کاربردهای مختلف بلاکها آشنا میشویم. 🚀
1. بلاکها در ساختارهای کنترلی (if-else) 🧩
بلاکها در پایتون با استفاده از تورفتگی (Spaces یا Tabs) تعریف میشوند. برای مثال، در ساختار
در اینجا، هر دو بلاک با تورفتگی یکسان از خط اصلی جدا شدهاند.
2. بلاکها در حلقهها (for و while) 🔄
در حلقههای
هر بلاک شامل دستورات متعددی میتواند باشد که با تورفتگی از هم جدا میشوند.
3. بلاکها در تعریف توابع (Functions) 📝
بلاکها در تعریف توابع نیز به کار میروند:
در اینجا، بلاک داخل تابع با تورفتگی مشخص شده است.
4. بلاکها در تعریف کلاسها (Classes) 🏫
تعریف کلاسها نیز شامل بلاکهای مختلفی است:
در اینجا، بلاکهای داخل کلاس و متدها با تورفتگی مشخص شدهاند.
5. بلاکها در مدیریت استثناها (Exceptions) 🚨
مدیریت استثناها نیز از بلاکها استفاده میکند:
بلاکهای
توضیحات:
1. ساختارهای کنترلی: بلاکهای
2. حلقهها: بلاکهای
3. توابع: بلاکهای داخل توابع با تورفتگی از خط تعریف تابع جدا میشوند.
4. کلاسها: بلاکهای داخل کلاس و متدها نیز با تورفتگی مشخص میشوند.
5. مدیریت استثناها: بلاکهای
استفاده از بلاکها در پایتون بسیار ساده و شهودی است. تورفتگی در پایتون نقش مهمی در خوانایی و ساختار کد دارد. امیدوارم این آموزش برای شما مفید باشد! 😊
(کانال تلگرام مارو دنبال کنید)
#Python #Programming #Coding #Blocks #آموزش
  
  بلاکها (Blocks) در پایتون، بخشهای کدی هستند که با استفاده از تورفتگی (Indentation) مشخص میشوند. بلاکها معمولا در ساختارهای کنترلی، حلقهها، تعریف توابع و کلاسها استفاده میشوند. در این آموزش، با مفاهیم و کاربردهای مختلف بلاکها آشنا میشویم. 🚀
1. بلاکها در ساختارهای کنترلی (if-else) 🧩
بلاکها در پایتون با استفاده از تورفتگی (Spaces یا Tabs) تعریف میشوند. برای مثال، در ساختار
if-else:x = 10
if x > 5:
print("x is greater than 5") # این یک بلاک است
else:
print("x is less than or equal to 5") # این نیز یک بلاک است
در اینجا، هر دو بلاک با تورفتگی یکسان از خط اصلی جدا شدهاند.
2. بلاکها در حلقهها (for و while) 🔄
در حلقههای
for و while نیز از بلاکها استفاده میشود:# حلقه for
for i in range(5):
print("Iteration", i) # این یک بلاک است
# حلقه while
j = 0
while j < 5:
print("Iteration", j) # این یک بلاک است
j += 1
هر بلاک شامل دستورات متعددی میتواند باشد که با تورفتگی از هم جدا میشوند.
3. بلاکها در تعریف توابع (Functions) 📝
بلاکها در تعریف توابع نیز به کار میروند:
def greet(name):
print("Hello", name) # این یک بلاک است
greet("Alice")
در اینجا، بلاک داخل تابع با تورفتگی مشخص شده است.
4. بلاکها در تعریف کلاسها (Classes) 🏫
تعریف کلاسها نیز شامل بلاکهای مختلفی است:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
print("Hello, my name is", self.name)
p = Person("Bob", 30)
p.greet()
در اینجا، بلاکهای داخل کلاس و متدها با تورفتگی مشخص شدهاند.
5. بلاکها در مدیریت استثناها (Exceptions) 🚨
مدیریت استثناها نیز از بلاکها استفاده میکند:
try:
x = 1 / 0
except ZeroDivisionError:
print("You cannot divide by zero!") # این یک بلاک است
finally:
print("This will always execute") # این یک بلاک است
بلاکهای
try, except و finally هر کدام با تورفتگی از هم جدا شدهاند.توضیحات:
1. ساختارهای کنترلی: بلاکهای
if-else با تورفتگی مشخص میشوند.2. حلقهها: بلاکهای
for و while شامل دستورات با تورفتگی مشابه هستند.3. توابع: بلاکهای داخل توابع با تورفتگی از خط تعریف تابع جدا میشوند.
4. کلاسها: بلاکهای داخل کلاس و متدها نیز با تورفتگی مشخص میشوند.
5. مدیریت استثناها: بلاکهای
try, except و finally هر کدام با تورفتگی از هم جدا شدهاند.استفاده از بلاکها در پایتون بسیار ساده و شهودی است. تورفتگی در پایتون نقش مهمی در خوانایی و ساختار کد دارد. امیدوارم این آموزش برای شما مفید باشد! 😊
(کانال تلگرام مارو دنبال کنید)
#Python #Programming #Coding #Blocks #آموزش
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
❤5
  سلام دوستان ، شرمنده امروز پستی نذاشتیم ( سرکار )❤️🥲
یه نظرسنجی میزارم حتما جواب بدید✔️🔥
یه نظرسنجی میزارم حتما جواب بدید✔️🔥
👍5
  🖥 | برای دوستانی که با «PC» کد میزنن برنامه «Visual Studio Code» 
📱 | برای کسانی که با «موبایل» کد میزنن «Pydroid 3» رو پیشنهاد میکنم
⚠️ : @hamidpython123
  
  📱 | برای کسانی که با «موبایل» کد میزنن «Pydroid 3» رو پیشنهاد میکنم
⚠️ : @hamidpython123
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍5
  پارت ۱۳: ماژولها و پکیجها در پایتون 📦🐍
در این پارت با ماژولها و پکیجها در پایتون آشنا میشویم و میبینیم چگونه میتوانیم کدهای خود را به صورت منطقی و قابل نگهداری تقسیمبندی کنیم.
۱. ماژولها (Modules)
ماژولها فایلهایی با پسوند
ایجاد و استفاده از یک ماژول
1. ایجاد ماژول: ابتدا یک فایل به نام
   
2. استفاده از ماژول: در یک فایل دیگر میتوانید از ماژول ایجاد شده استفاده کنید:
   
۲. پکیجها (Packages)
پکیجها مجموعهای از ماژولها هستند که در یک دایرکتوری قرار دارند و شامل یک فایل
ایجاد و استفاده از یک پکیج
1. ایجاد پکیج: ساختار زیر را ایجاد کنید:
   
2. فایل
   
3. فایل
   
4. استفاده از پکیج:
   
۳. نصب و استفاده از پکیجهای خارجی
شما میتوانید از پکیجهای خارجی که توسط جامعه پایتون ایجاد شدهاند نیز استفاده کنید. این پکیجها معمولاً از طریق PyPI (Python Package Index) در دسترس هستند و میتوانید آنها را با استفاده از pip نصب کنید.
نصب یک پکیج
به عنوان مثال، نصب پکیج
استفاده از پکیج نصب شده
۴. ایجاد و انتشار پکیج خود
اگر شما یک پکیج ایجاد کردهاید و میخواهید آن را با دیگران به اشتراک بگذارید، میتوانید آن را در PyPI منتشر کنید. این فرآیند شامل ایجاد فایلهایی مانند
فایل
این فایل شامل اطلاعاتی درباره پکیج شماست:
انتشار پکیج
مراحل کلی برای انتشار پکیج شامل ساخت و آپلود بسته به PyPI است:
[اینم کانال ما]
#پایتون #آموزش_پایتون #ماژول #پکیج #PythonModules #PythonPackages
  
  
  
  
  
  در این پارت با ماژولها و پکیجها در پایتون آشنا میشویم و میبینیم چگونه میتوانیم کدهای خود را به صورت منطقی و قابل نگهداری تقسیمبندی کنیم.
۱. ماژولها (Modules)
ماژولها فایلهایی با پسوند
.py هستند که شامل کد پایتون میباشند. شما میتوانید از ماژولها برای سازماندهی کدهای خود و جلوگیری از تکرار کدها استفاده کنید.ایجاد و استفاده از یک ماژول
1. ایجاد ماژول: ابتدا یک فایل به نام
my_module.py ایجاد کنید و کدهای زیر را در آن قرار دهید:# my_module.py
def greet(name):
return f"Hello, {name}!"
def add(a, b):
return a + b
2. استفاده از ماژول: در یک فایل دیگر میتوانید از ماژول ایجاد شده استفاده کنید:
# main.py
import my_module
print(my_module.greet("Alice")) # خروجی: Hello, Alice!
print(my_module.add(5, 3)) # خروجی: 8
۲. پکیجها (Packages)
پکیجها مجموعهای از ماژولها هستند که در یک دایرکتوری قرار دارند و شامل یک فایل
init.py هستند. این فایل میتواند خالی باشد یا کدهای خاصی را شامل شود.ایجاد و استفاده از یک پکیج
1. ایجاد پکیج: ساختار زیر را ایجاد کنید:
my_package/
__init__.py
module1.py
module2.py
2. فایل
module1.py:# module1.py
def multiply(a, b):
return a * b
3. فایل
module2.py:# module2.py
def divide(a, b):
if b == 0:
return "Cannot divide by zero!"
return a / b
4. استفاده از پکیج:
# main.py
from my_package import module1, module2
print(module1.multiply(4, 5)) # خروجی: 20
print(module2.divide(10, 2)) # خروجی: 5.0
۳. نصب و استفاده از پکیجهای خارجی
شما میتوانید از پکیجهای خارجی که توسط جامعه پایتون ایجاد شدهاند نیز استفاده کنید. این پکیجها معمولاً از طریق PyPI (Python Package Index) در دسترس هستند و میتوانید آنها را با استفاده از pip نصب کنید.
نصب یک پکیج
به عنوان مثال، نصب پکیج
requests برای انجام درخواستهای HTTP:pip install requests
استفاده از پکیج نصب شده
import requests
response = requests.get('https://api.github.com')
print(response.status_code) # خروجی: 200 (یا هر کد وضعیت دیگر)
print(response.json()) # خروجی: دادههای JSON دریافت شده از API
۴. ایجاد و انتشار پکیج خود
اگر شما یک پکیج ایجاد کردهاید و میخواهید آن را با دیگران به اشتراک بگذارید، میتوانید آن را در PyPI منتشر کنید. این فرآیند شامل ایجاد فایلهایی مانند
setup.py و ثبت پکیج در PyPI میشود.فایل
setup.pyاین فایل شامل اطلاعاتی درباره پکیج شماست:
from setuptools import setup, find_packages
setup(
name='my_package',
version='0.1',
packages=find_packages(),
install_requires=[],
)
انتشار پکیج
مراحل کلی برای انتشار پکیج شامل ساخت و آپلود بسته به PyPI است:
python setup.py sdist bdist_wheel
twine upload dist/*
[اینم کانال ما]
#پایتون #آموزش_پایتون #ماژول #پکیج #PythonModules #PythonPackages
پارت ۱۴: کتابخانههای استاندارد پایتون 📚🐍
در این پارت، به بررسی کتابخانههای استاندارد پایتون میپردازیم که ابزارهای قدرتمندی برای انجام وظایف مختلف در اختیار شما قرار میدهند. کتابخانه استاندارد پایتون شامل ماژولها و پکیجهایی است که با نصب پایتون به طور پیشفرض در دسترس هستند و نیاز به نصب جداگانه ندارند.
۱. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۲. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۳. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۴. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۵. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۶. کتابخانه
کتابخانه
مثالهایی از کتابخانه
(آموزش های خیلی مفید کانال ما)
#پایتون #آموزش_پایتون #کتابخانه_استاندارد #PythonStandardLibrary #PythonModules
  
  در این پارت، به بررسی کتابخانههای استاندارد پایتون میپردازیم که ابزارهای قدرتمندی برای انجام وظایف مختلف در اختیار شما قرار میدهند. کتابخانه استاندارد پایتون شامل ماژولها و پکیجهایی است که با نصب پایتون به طور پیشفرض در دسترس هستند و نیاز به نصب جداگانه ندارند.
۱. کتابخانه
mathکتابخانه
math شامل توابع و ثابتهای ریاضی پایهای است که برای انجام محاسبات ریاضی مورد استفاده قرار میگیرد.مثالهایی از کتابخانه
mathimport math
# محاسبه جذر
print(math.sqrt(16)) # خروجی: 4.0
# محاسبه سینوس
print(math.sin(math.pi / 2)) # خروجی: 1.0
# محاسبه لگاریتم
print(math.log(10)) # خروجی: 2.302585092994046
۲. کتابخانه
datetimeکتابخانه
datetime برای کار با تاریخ و زمان استفاده میشود. این کتابخانه امکان انجام محاسبات تاریخ و زمان، قالببندی و تجزیه را فراهم میکند.مثالهایی از کتابخانه
datetimeimport datetime
# ایجاد یک شیء تاریخ و زمان
now = datetime.datetime.now()
print(now) # خروجی: تاریخ و زمان فعلی
# قالببندی تاریخ
print(now.strftime("%Y-%m-%d %H:%M:%S")) # خروجی: قالببندی شده به صورت سال-ماه-روز ساعت:دقیقه:ثانیه
# محاسبه اختلاف بین دو تاریخ
date1 = datetime.datetime(2023, 7, 5)
date2 = datetime.datetime(2024, 7, 5)
diff = date2 - date1
print(diff.days) # خروجی: 366
۳. کتابخانه
osکتابخانه
os ابزارهایی برای تعامل با سیستمعامل فراهم میکند، از جمله کار با فایلها و دایرکتوریها، اجرای دستورات سیستمعامل و دسترسی به متغیرهای محیطی.مثالهایی از کتابخانه
osimport os
# دریافت مسیر دایرکتوری فعلی
current_directory = os.getcwd()
print(current_directory) # خروجی: مسیر دایرکتوری فعلی
# ایجاد یک دایرکتوری جدید
os.mkdir("new_directory")
# لیست کردن فایلها و دایرکتوریها
files = os.listdir(".")
print(files) # خروجی: لیستی از فایلها و دایرکتوریها در دایرکتوری فعلی
۴. کتابخانه
sysکتابخانه
sys ابزارهایی برای تعامل با مفسر پایتون فراهم میکند، از جمله دسترسی به آرگومانهای خط فرمان، مدیریت خروجی و ورودی استاندارد و مدیریت استثناءها.مثالهایی از کتابخانه
sysimport sys
# دریافت آرگومانهای خط فرمان
print(sys.argv) # خروجی: لیستی از آرگومانهای خط فرمان
# چاپ پیام خطا و خروج از برنامه
sys.stderr.write("This is an error message\n")
sys.exit(1)
۵. کتابخانه
randomکتابخانه
random برای تولید اعداد تصادفی و انجام عملیات تصادفی مانند انتخاب عناصر از لیست استفاده میشود.مثالهایی از کتابخانه
randomimport random
# تولید یک عدد تصادفی بین 1 و 10
print(random.randint(1, 10)) # خروجی: یک عدد تصادفی بین 1 و 10
# انتخاب تصادفی از لیست
choices = ['apple', 'banana', 'cherry']
print(random.choice(choices)) # خروجی: یکی از عناصر لیست به صورت تصادفی
# مخلوط کردن عناصر لیست
random.shuffle(choices)
print(choices) # خروجی: لیست مخلوط شده
۶. کتابخانه
jsonکتابخانه
json برای کار با دادههای JSON استفاده میشود. این کتابخانه ابزارهایی برای تبدیل دادههای پایتون به فرمت JSON و برعکس فراهم میکند.مثالهایی از کتابخانه
jsonimport json
# تبدیل دیکشنری به رشته JSON
data = {'name': 'Alice', 'age': 30}
json_string = json.dumps(data)
print(json_string) # خروجی: {"name": "Alice", "age": 30}
# تبدیل رشته JSON به دیکشنری
data_parsed = json.loads(json_string)
print(data_parsed) # خروجی: {'name': 'Alice', 'age': 30}
(آموزش های خیلی مفید کانال ما)
#پایتون #آموزش_پایتون #کتابخانه_استاندارد #PythonStandardLibrary #PythonModules
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍2
  آیا میدانستید؟ 🤓
اولین کامپیوتر مکانیکی قابل برنامهریزی در جهان توسط کنراد تسوزه (Konrad Zuse) ساخته شد و به نام Z1 شناخته میشود. 💻✨ این شاهکار مهندسی در سال 1938 در آلمان ساخته شد و یکی از اولین تلاشها برای ایجاد یک کامپیوتر دیجیتال واقعی بود.
Z1 با استفاده از قطعات مکانیکی پیچیدهای که شامل اهرمها و چرخدندهها بود، اطلاعات دو دویی (باینری) را ذخیره و پردازش میکرد. 🤖🛠 این کامپیوتر مکانیکی دارای دقت و سرعت کمتری نسبت به کامپیوترهای الکترونیکی امروزی بود، اما گامی بزرگ در جهت توسعه علم کامپیوتر به حساب میآید.
از ویژگیهای جالب Z1 میتوان به موارد زیر اشاره کرد:
- استفاده از مموری مکانیکی برای ذخیره دادهها 🗄🔧
- قابلیت برنامهریزی با استفاده از نوارهای پانچ 📜🎛
- انجام محاسبات منطقی و ریاضی با استفاده از سیستم دو دویی 🔢🤓
Z1 توسط تسوزه در خانهاش و با استفاده از منابع محدودی که در دسترس داشت، ساخته شد. این دستگاه نشاندهنده نبوغ و پیشگامی تسوزه در حوزه کامپیوتر بود و راه را برای نسلهای بعدی کامپیوترها هموار کرد. 👨🔬🚀
این کامپیوتر خارقالعاده، اگرچه در جنگ جهانی دوم و بمبارانها از بین رفت، اما مدلهای بازسازی شده آن در موزههای مختلفی به نمایش گذاشته شدهاند تا یادآور یکی از نخستین گامها در دنیای محاسبات باشند. 🏛🔍
(دانستنی های بیشتر توی کانال ما)
#تاریخچه_کامپیوتر #کنراد_تسوزه #Z1 #کامپیوتر_مکانیکی #نوآوری #دانستنی #علم_و_فناوری
  
  اولین کامپیوتر مکانیکی قابل برنامهریزی در جهان توسط کنراد تسوزه (Konrad Zuse) ساخته شد و به نام Z1 شناخته میشود. 💻✨ این شاهکار مهندسی در سال 1938 در آلمان ساخته شد و یکی از اولین تلاشها برای ایجاد یک کامپیوتر دیجیتال واقعی بود.
Z1 با استفاده از قطعات مکانیکی پیچیدهای که شامل اهرمها و چرخدندهها بود، اطلاعات دو دویی (باینری) را ذخیره و پردازش میکرد. 🤖🛠 این کامپیوتر مکانیکی دارای دقت و سرعت کمتری نسبت به کامپیوترهای الکترونیکی امروزی بود، اما گامی بزرگ در جهت توسعه علم کامپیوتر به حساب میآید.
از ویژگیهای جالب Z1 میتوان به موارد زیر اشاره کرد:
- استفاده از مموری مکانیکی برای ذخیره دادهها 🗄🔧
- قابلیت برنامهریزی با استفاده از نوارهای پانچ 📜🎛
- انجام محاسبات منطقی و ریاضی با استفاده از سیستم دو دویی 🔢🤓
Z1 توسط تسوزه در خانهاش و با استفاده از منابع محدودی که در دسترس داشت، ساخته شد. این دستگاه نشاندهنده نبوغ و پیشگامی تسوزه در حوزه کامپیوتر بود و راه را برای نسلهای بعدی کامپیوترها هموار کرد. 👨🔬🚀
این کامپیوتر خارقالعاده، اگرچه در جنگ جهانی دوم و بمبارانها از بین رفت، اما مدلهای بازسازی شده آن در موزههای مختلفی به نمایش گذاشته شدهاند تا یادآور یکی از نخستین گامها در دنیای محاسبات باشند. 🏛🔍
(دانستنی های بیشتر توی کانال ما)
#تاریخچه_کامپیوتر #کنراد_تسوزه #Z1 #کامپیوتر_مکانیکی #نوآوری #دانستنی #علم_و_فناوری
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍1
  آیا میدانستید؟ 🤓
یکی از نکات بسیار مهم در کار با توابع در پایتون که میتواند به شما کمک کند تا با خطاهای کمتری مواجه شوید، استفاده از آرگومانهای پیشفرض (Default Arguments) است. 🌟
آرگومانهای پیشفرض در پایتون
در پایتون، شما میتوانید برای آرگومانهای یک تابع مقدار پیشفرض تعیین کنید. این کار باعث میشود که اگر هنگام فراخوانی تابع مقداری برای این آرگومانها ارسال نشود، مقدار پیشفرض استفاده شود. 📝🔧
مثال
چرا استفاده از آرگومانهای پیشفرض مهم است؟
1. جلوگیری از خطاهای رایج: وقتی شما آرگومانهای پیشفرض تعیین میکنید، در صورتی که برخی از آرگومانها فراموش شوند، کد شما همچنان به درستی کار خواهد کرد و با خطای "آرگومان کافی نیست" مواجه نخواهید شد. 🚫❌
2. افزایش خوانایی و کارایی کد: با استفاده از آرگومانهای پیشفرض، کد شما خواناتر و استفاده از توابع شما راحتتر خواهد شد، به خصوص زمانی که توابع پیچیدهتری دارید. 📖✨
3. انعطافپذیری بیشتر: شما میتوانید توابعی بنویسید که در شرایط مختلف و با مقادیر ورودی مختلف به درستی عمل کنند، بدون اینکه نیاز باشد چندین تابع مختلف برای شرایط متفاوت تعریف کنید. 🎛🔄
این نکته ساده اما قدرتمند میتواند به شما کمک کند تا کدهای تمیزتر و پایدارتر بنویسید و با خطاهای کمتری مواجه شوید. 🛠🔍
🔻برای نکته های بیشتر اینجا کلیک کن
#پایتون #برنامهنویسی #آموزش_پایتون #تابعها #توسعه_دهنده #نکات_برنامهنویسی
  
  یکی از نکات بسیار مهم در کار با توابع در پایتون که میتواند به شما کمک کند تا با خطاهای کمتری مواجه شوید، استفاده از آرگومانهای پیشفرض (Default Arguments) است. 🌟
آرگومانهای پیشفرض در پایتون
در پایتون، شما میتوانید برای آرگومانهای یک تابع مقدار پیشفرض تعیین کنید. این کار باعث میشود که اگر هنگام فراخوانی تابع مقداری برای این آرگومانها ارسال نشود، مقدار پیشفرض استفاده شود. 📝🔧
مثال
def greet(name, message="سلام!"):
print(f"{message}, {name}")
# فراخوانی تابع بدون ارسال آرگومان message
greet("علی")
# خروجی: سلام!, علی
# فراخوانی تابع با ارسال آرگومان message
greet("علی", "صبح بخیر")
# خروجی: صبح بخیر, علی
چرا استفاده از آرگومانهای پیشفرض مهم است؟
1. جلوگیری از خطاهای رایج: وقتی شما آرگومانهای پیشفرض تعیین میکنید، در صورتی که برخی از آرگومانها فراموش شوند، کد شما همچنان به درستی کار خواهد کرد و با خطای "آرگومان کافی نیست" مواجه نخواهید شد. 🚫❌
2. افزایش خوانایی و کارایی کد: با استفاده از آرگومانهای پیشفرض، کد شما خواناتر و استفاده از توابع شما راحتتر خواهد شد، به خصوص زمانی که توابع پیچیدهتری دارید. 📖✨
3. انعطافپذیری بیشتر: شما میتوانید توابعی بنویسید که در شرایط مختلف و با مقادیر ورودی مختلف به درستی عمل کنند، بدون اینکه نیاز باشد چندین تابع مختلف برای شرایط متفاوت تعریف کنید. 🎛🔄
این نکته ساده اما قدرتمند میتواند به شما کمک کند تا کدهای تمیزتر و پایدارتر بنویسید و با خطاهای کمتری مواجه شوید. 🛠🔍
🔻برای نکته های بیشتر اینجا کلیک کن
#پایتون #برنامهنویسی #آموزش_پایتون #تابعها #توسعه_دهنده #نکات_برنامهنویسی
Telegram
  
  Python3
  🎓 آموزش و پروژههای Python  
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍1
  