
ماژول در پایتون
در این بخش به بررسی ماژول در پایتون می پردازیم، یک ماژول را مانند کتابخانه در نظر بگیرید، اگر تجربه برنامه نویسی به زبان های مختلف را داشته باشید قطعاً با اصطلاح کتابخانه برخورد کرده اید.
ماژول ها در پایتون در واقع فایل هایی، حاویِ مجموعه ای از توابع هستند که می توانید از آن در برنامه خود استفاده کنید.
ایجاد یک ماژول در پایتون
برای ایجاد یک ماژول در پایتون باید یک فایل با پسوند .py
ایجاد کرده و کد های خود را داخل آن قرار بدهید.
مثال
این کد ها را داخل یک فایل با نام mymodule.py
ذخیره کنید:
نحوه استفاده از ماژول در پایتون
اکنون می توانیم با استفاده از دستور import
از ماژولی که ایجاد کرده ایم در برنامه استفاده کنیم.
مثال
در اینجا ما ماژول mymodule
را فراخوانی کرده ایم و از تابع greeting
در برنامه استفاده می کنیم:
import mymodule
mymodule.greeting("Matin")
خروجی:
Hello, Matin
یادداشت: پس نحوه استفاده از توابع در ماژول به این شکل بود: module_name.function_name
متغیر ها در ماژول
همانطور که قبلاً توضیح داده شد، یک ماژول می تواند دارای توابع مختلفی باشد همچنین می تواند همه نوع متغیری مانند: آرایه ها، دیکشنری ها، اشیاء و…) را داخل خود داشته باشد.
مثال
کد های زیر را داخل فایل mymodule.py
ذخیره کنید:
person1 = {
"name": "John",
"age": 36,
"country": "Norway"
}
مثال
اکنون قصد داریم ماژول mymodule
را به برنامه اضافه کنیم و دیکشنری person1
را فراخوانی کنیم:
import mymodule
a = mymodule.person1["age"]
print(a)
خروجی:
36
نام گذاری ماژول
شما می توانید هر نامی را برای ماژول بگذارید، دقت کنید که پسوند فایل حتماً .py
باشد.
نام گذاری مجدد یک ماژول
هنگام وارد کردن یک ماژول، می توانید با استفاده از کلمه کلیدی as
یک نام مستعار برای آن ایجاد کنید.
مثال
در این مثال یک نام مستعار برای ماژول mymodule
تحت عنوان mx
ایجاد می کنیم:
import mymodule as mx
a = mx.person1["age"]
print(a)
خروجی:
36
ماژول های داخلی در پایتون
تعدادی ماژول داخلی در پایتون وجود دارد که هر زمان بخواهید می توانید آنها را به برنامه اضافه کنید.
مثال
در این مثال ماژول platform
را وارد کرده و از آن استفاده می کنیم:
import platform
x = platform.system()
print(x)
خروجی نام سیستم عامل شما است:
Windows
استفاده از تابع dir()
یک تابع داخلی تحت عنوان dir()
برای لیست کردن تمام نام های توابع یا متغیر ها در یک ماژول وجود دارد.
مثال
لیست تمام نام های تعریف شده متعلق به ماژول platform
:
import platform
x = dir(platform)
print(x)
خروجی:
['DEV_NULL', '_UNIXCONFDIR', 'WIN32_CLIENT_RELEASES', 'WIN32_SERVER_RELEASES', '__builtins__', '__cached__', '__copyright__', '__doc__', '__file__', '__loader__', '__name__', '__package __', '__spec__', '__version__', '_default_architecture', '_dist_try_harder', '_follow_symlinks', '_ironpython26_sys_version_parser', '_ironpython_sys_version_parser', '_java_getprop', '_libc_search', '_linux_distribution', '_lsb_release_version', '_mac_ver_xml', '_node', '_norm_version', '_perse_release_file', '_platform', '_platform_cache', '_pypy_sys_version_parser', '_release_filename', '_release_version', '_supported_dists', '_sys_version', '_sys_version_cache', '_sys_version_parser', '_syscmd_file', '_syscmd_uname', '_syscmd_ver', '_uname_cache', '_ver_output', 'architecture', 'collections', 'dist', 'java_ver', 'libc_ver', 'linux_distribution', 'mac_ver', 'machine', 'node', 'os', 'platform', 'popen', 'processor', 'python_branch', 'python_build', 'python_compiler', 'python_implementation', 'python_revision', 'python_version', 'python_version_tuple', 're', 'release', 'subprocess', 'sys', 'system', 'system_aliases', 'uname', 'uname_result', 'version', 'warnings', 'win32_ver']
توجه: تابع dir()
را می توان در همه ماژول ها استفاده کرد، همچنین ماژول هایی که خودتان ایجاد کرده اید.
کلمه کلیدی from
شما می توانید با استفاده از کلمه کلیدی from
، فقط بخشی از یک ماژول را به برنامه اضافه کنید، یعنی به عنوان مثال ماژول شما 100 تا تابع دارد و شما تنها می خواهید یکی از توابع این ماژول را فراخوانی کنید.
مثال
در اینجا ماژول mymodule
ما یک تابع و یک دیکشنری دارد:
مثال
اکنون می خواهیم تنها دیکشنری person1
را از ماژول mymodule
فراخوانی کنیم:
from mymodule import person1
print (person1["age"])
نکته: هنگامی که از عبارت from استفاده می کنید، از نام ماژول برای فراخوانی عناصر موجود در ماژول استفاده نکنید، مثلاً: person1["age"]
صحیح است و غلط است.mymodule.person1["age"]
آیا این مطلب برای شما مفید بود ؟
اقسام علم
و درود خدا بر او، فرمود: علم دو گونه است: علم فطرى و علم اكتسابى، علم اكتسابى اگر هماهنگ با علم فطرى(1) نباشد سودمند نخواهد بود.
- علومی که انسان در طبیعت و فطرت خود آن را می یابد و زمینه های یافتن آن را دارد (مطبوع) است، و علومی که با درس و بحث آن را به دست می آورد (مسموع) می باشد، اشاره به علم این تیوشن Intution (علم حضوری، درک مستقیم) وبرگسونیسم Bergsonism (درون بینی یا درک غیر مستقیم) و اشاره به اکتسابی بودن برخی از علوم (اکوارد Acquired) علم اکتسابی و (نَچرال ساینس Natural Science).