توابع و ماژول‌ها (بخش دوم)

ایجاد شده توسط دکتر مصطفی جلیلی در آموزش برنامه نویسی پایتون 25 فوریه 2025
اشتراک گذاری

آرگومان‌ها (args, kwargs)


در پایتون، امکان تعریف توابعی با تعداد نامعلومی از آرگومان‌ها وجود دارد. این ویژگی با استفاده از args (آرگومان‌های موقعیتی) و kwargs (آرگومان‌های کلیدی) پیاده‌سازی می‌شود:




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


    def جمع_اعداد(*args):
    total = 0
    for num in args:
    total += num
    return total
    print(جمع_اعداد(1, 2, 3, 4)) # خروجی: 10



  • kwargs:
    این روش برای دریافت آرگومان‌های کلیدی (به صورت دیکشنری) استفاده می‌شود.
    مثال:


    def معرفی_شخص(**kwargs):
    for key, value in kwargs.items():
    print(f"{key}: {value}")
    معرفی_شخص(نام="علی", سن=30, شهر="تهران")
    # خروجی:
    # نام: علی
    # سن: 30
    # شهر: تهران



ترکیب این دو روش در یک تابع اجازه می‌دهد تا هر دو نوع آرگومان را دریافت کنیم:


def نمایش_اطلاعات(*args, **kwargs):
print("آرگومان‌های موقعیتی:", args)
print("آرگومان‌های کلیدی:", kwargs)
نمایش_اطلاعات(10, 20, 30, نام="سارا", حرفه="برنامه‌نویس")



ماژول‌های داخلی پایتون (math, random, os, sys, time)


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


ماژول math


این ماژول توابع و ثابت‌های ریاضی را فراهم می‌کند.



  • توابع مهم: sqrt()، sin()، cos()، log() و ...

  • مثال:
    import math
    print(math.sqrt(16)) # خروجی: 4.0
    print(math.pi) # خروجی: 3.141592653589793



ماژول random


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



  • توابع مهم: random(), randint(), choice(), shuffle() و ...

  • مثال:
    import random
    print(random.random()) # خروجی: عددی بین 0 و 1
    print(random.randint(1, 10)) # خروجی: عدد صحیح بین 1 و 10
    نمونه = ['سیب', 'موز', 'گیلاس']
    print(random.choice(نمونه)) # انتخاب تصادفی یک عنصر از لیست



ماژول os


برای تعامل با سیستم عامل (مانند مدیریت فایل‌ها، دایرکتوری‌ها و متغیرهای محیطی) کاربرد دارد.



  • مثال:
    import os
    print(os.getcwd()) # نمایش مسیر فعلی
    # ایجاد یک دایرکتوری جدید
    if not os.path.exists("دایرکتوری_جدید"):
    os.mkdir("دایرکتوری_جدید")



ماژول sys


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



  • مثال:
    import sys
    print(sys.argv) # لیستی از آرگومان‌های خط فرمان
    # خروج از برنامه:
    # sys.exit()



ماژول time


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



  • مثال:
    import time
    print("شروع")
    time.sleep(2) # تاخیر به مدت 2 ثانیه
    print("پایان")
    print("زمان فعلی:", time.time()) # نمایش زمان به صورت timestamp





ساخت و Import کردن ماژول‌های سفارشی


شما می‌توانید ماژول‌های خود را ایجاد کرده و آن‌ها را در برنامه‌های پایتون وارد (import) کنید.


ایجاد ماژول سفارشی



  1. یک فایل با پسوند .py ایجاد کنید.
    مثال: فایل my_module.py:
    # my_module.py
    def سلام():
    return "سلام از ماژول سفارشی!"
    عدد = 42


  2. در فایل اصلی یا هر فایل دیگر می‌توانید این ماژول را وارد کنید.


Import کردن ماژول


  • روش ۱: وارد کردن کل ماژول


  • import my_module
    print(my_module.سلام())
    print(my_module.عدد)


  • روش ۲: وارد کردن توابع/متغیرهای خاص از ماژول

  • from my_module import سلام, عدد
    print(سلام())
    print(عدد)


  • روش ۳: وارد کردن با تغییر نام (aliasing)

  • import my_module as mm
    print(mm.سلام())



نکته: اطمینان حاصل کنید که فایل ماژول در همان دایرکتوری یا در مسیرهای قابل دسترس پایتون قرار داشته باشد.




مدیریت پکیج‌ها با pip


pip ابزار استاندارد پایتون برای نصب، حذف و مدیریت بسته‌ها (پکیج‌ها) است.


نصب یک پکیج


برای نصب یک پکیج از خط فرمان استفاده می‌کنیم:


pip install package_name

مثال:


pip install requests

حذف (uninstall) یک پکیج


برای حذف یک پکیج:


pip uninstall package_name

مثال:


pip uninstall requests

مشاهده لیست پکیج‌های نصب شده


برای دیدن پکیج‌های نصب شده:


pip list

فریز کردن پکیج‌ها (تولید فایل requirements.txt)


برای تولید فهرست پکیج‌های نصب شده جهت استفاده در محیط‌های دیگر:


pip freeze > requirements.txt

نصب پکیج‌ها از فایل requirements.txt


برای نصب تمام پکیج‌های ذکر شده در این فایل:


pip install -r requirements.txt

نکات مهم در مدیریت پکیج‌ها:



  • محیط‌های مجازی:
    توصیه می‌شود از محیط‌های مجازی (virtual environments) مانند venv یا virtualenv استفاده کنید تا بسته‌های پروژه‌های مختلف از یکدیگر مجزا باشند.

  • بروزرسانی pip:
    برای اطمینان از استفاده از آخرین نسخه pip:
    pip install --upgrade pip





این توضیحات به شما کمک می‌کند تا مباحث مربوط به آرگومان‌های متغیر، ماژول‌های داخلی پایتون، ساخت ماژول‌های سفارشی و مدیریت پکیج‌ها با pip را به طور کامل و دقیق در جزوه تدریس پایتون خود بگنجانید.

نظرات (0)

اشتراک گذاری

این پست را با دیگران به اشتراک بگذارید

تنظیمات GDPR

When you visit any of our websites, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences or your device and is mostly used to make the site work as you expect it to. The information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to find out more and manage your preferences. Please note, that blocking some types of cookies may impact your experience of the site and the services we are able to offer.