The Python standard library¶
This library reference manual describes the standard library distributed with Python. It also describes some of the optional components that are commonly included in Python distributions.
Elsewhere, مرجع زبان پایتون describes the exact syntax and semantics of the Python language, and Python built-ins reference describes the built-in functions.
Python's standard library is extensive, offering a wide range of facilities as indicated by the long table of contents listed below. The library contains built-in modules (written in C) that provide access to system functionality such as file I/O that would otherwise be inaccessible to Python programmers, as well as modules written in Python that provide standardized solutions for many problems that occur in everyday programming. Some of these modules are explicitly designed to encourage and enhance the portability of Python programs by abstracting away platform-specifics into platform-neutral APIs.
نصبکنندههای پایتون برای سکوی ویندوز معمولاً شامل کل کتابخانه استاندارد و اغلب همچنین شامل بسیاری از کامپوننتهای اضافی میشوند. برای سیستمعاملهای شبهیونیکس، پایتون معمولاً بهصورت مجموعهای از بستهها ارائه میشود، بنابراین ممکن است لازم باشد برای دریافت برخی یا همهی کامپوننتهای اختیاری از ابزارهای بستهبندی ارائهشده همراه سیستمعامل استفاده کنید.
علاوه بر کتابخانه استاندارد، مجموعهای فعال از صدها هزار کامپوننت (از برنامهها و ماژولهای منفرد گرفته تا بستهها و چارچوبهای کامل توسعهی برنامههای کاربردی) از طریق Python Package Index در دسترس است.
- مقدمه
- خدمات پردازش متن
string--- عملیات رایج رشتههاstring.templatelib--- پشتیبانی از رشتهقالبهای لفظیre--- عملیات عبارت باقاعدهdifflib--- کمککنندههایی برای محاسبهی دلتاهاtextwrap--- پیچیدن و پر کردن متنunicodedata--- پایگاه داده یونیکدstringprep--- آمادهسازی رشتههای اینترنتیreadline--- رابط GNU readlinerlcompleter--- تابع تکمیل برای GNU readline
- خدمات دادههای دودویی
- انواع داده
datetime--- انواع پایه تاریخ و زمانzoneinfo--- پشتیبانی از منطقههای زمانی IANAcalendar--- توابع عمومی مرتبط با گاهشماریcollections--- انواع دادهی ظرفcollections.abc--- کلاسهای پایه انتزاعی برای ظروفheapq--- الگوریتم صف هیپbisect--- الگوریتم دو نیمهسازی آرایهarray--- آرایههای کارآمد از مقادیر عددیweakref--- ارجاعهای ضعیفtypes--- ایجاد نوع پویا و نامهایی برای انواع توکارcopy--- عملیات کپی کمعمق و عمیقpprint--- چاپگر زیبای دادههاreprlib--- پیادهسازی جایگزینrepr()enum--- پشتیبانی از شمارشهاgraphlib--- قابلیت کار با ساختارهای گرافمانند
- ماژولهای عددی و ریاضی
- ماژولهای برنامهنویسی تابعی
- دسترسی به پرونده و پوشه
pathlib--- مسیرهای شیءگرای سامانه فایلبندیos.path--- دستکاریهای رایج مسیرstat--- تفسیر نتایجstat()filecmp--- مقایسه پروندهها و پوشههاtempfile--- تولید پروندهها و پوشههای موقتglob--- بسط الگوی مسیر به سبک یونیکسfnmatch--- تطبیق الگوی نامپرونده یونیکسlinecache--- دسترسی تصادفی به سطرهای متنshutil--- عملیات پرونده سطحبالا
- ماندگاری داده
- فشردهسازی و بایگانی داده
- بستهی
compression compression.zstd--- فشردهسازی سازگار با قالب Zstandardzlib--- فشردهسازی سازگار با gzipgzip--- پشتیبانی از پروندههای gzipbz2--- پشتیبانی از فشردهسازی bzip2lzma--- فشردهسازی با استفاده از الگوریتم LZMAzipfile--- کار با بایگانیهای ZIPtarfile--- خواندن و نوشتن پروندههای بایگانی tar
- بستهی
- قالبهای پرونده
- خدمات رمزنگاری
- خدمات عام سیستمعامل
os--- رابطهای متفرقه سیستمعاملio--- ابزارهای اصلی برای کار با جریانهاtime--- دسترسی به زمان و تبدیلهاlogging--- امکان ثبت رویدادها برای پایتونlogging.config--- پیکربندی گزارشگیریlogging.handlers--- هندلرهای گزارشگیری (Logging handlers)platform--- دسترسی به دادههای شناسایی پلتفرم زیربناییerrno--- نمادهای سیستمی استاندارد errnoctypes--- کتابخانهای از توابع خارجی برای پایتون
- کتابخانههای رابط خط فرمان
argparse--- پارسر برای گزینهها، آرگومانها و زیرفرمانهای خط فرمانoptparse--- پارسر گزینههای خط فرمانgetpass--- ورودی قابلحمل گذرواژهfileinput--- پیمایش سطرها از چندین جریان ورودیcurses--- مدیریت پایانه برای نمایشگرهای سلولنویسهای (character-cell displays)curses.textpad--- ابزارک ورودی متن برای برنامههای cursescurses.ascii--- ابزارهایی برای نویسههای ASCIIcurses.panel--- یک افزونهی پشتهی پنل برای cursescmd--- پشتیبانی از مفسرهای فرمان خطمحور
- اجرای همروند
threading--- موازیسازی مبتنی بر نخmultiprocessing--- موازیسازی مبتنی بر فرایندmultiprocessing.shared_memory--- حافظه مشترک برای دسترسی مستقیم بین فرآیندها- بستهی
concurrent concurrent.futures--- راهاندازی وظایف موازیconcurrent.interpreters--- چندین مفسر در یک فرایند واحدsubprocess--- مدیریت زیرفرایندsched--- زمانبند رویدادqueue--- کلاس صف همگامشدهcontextvars--- متغیرهای زمینه_thread--- API نخبندی سطح پایین
- شبکهسازی و ارتباط بینفرایندی
asyncio--- ورودی/خروجی ناهمگامsocket--- رابط شبکهای سطح پایینssl--- پوششی TLS/SSL برای اشیای سوکتselect--- در انتظار تکمیل ورودی/خروجیselectors--- تسهیم سطح بالای I/O (multiplexing)signal--- تنظیم هندلرها برای رویدادهای ناهمگامmmap--- پشتیبانی از پروندههای نگاشتشده به حافظه (memory-mapped file)
- مدیریت دادههای اینترنتی
email--- بستهای برای مدیریت ایمیل و MIMEjson--- کدگذار و کدگشای JSONmailbox--- دستکاری صندوقهای پستی در قالبهای گوناگونmimetypes--- نگاشت نام پروندهها به انواع MIMEbase64--- کدگذاریهای Base16، Base32، Base64 و Base85 برای دادهbinascii--- تبدیل بین دادههای دودویی و ASCIIquopri--- کدگذاری و کدگشایی دادههای MIME با روش quoted-printable
- ابزارهای پردازش نمادگذاری ساختیافته
html--- پشتیبانی از زبان نمادگذاری ابرمتنhtml.parser--- پارسر سادهی HTML و XHTMLhtml.entities--- تعاریف موجودیتهای عمومی HTML (entities)- ماژولهای پردازش XML
xml.etree.ElementTree--- API اکسامال ElementTreexml.dom--- API مدل شیء سندxml.dom.minidom--- پیادهسازی کمینهی DOMxml.dom.pulldom--- پشتیبانی از ساخت درختهای DOM جزئیxml.sax--- پشتیبانی از پارسرهای SAX2xml.sax.handler--- کلاسهای پایه برای هندلرهای SAXxml.sax.saxutils--- ابزارهای SAXxml.sax.xmlreader--- رابط برای پارسرهای XMLxml.parsers.expat--- تجزیه سریع XML با استفاده از Expat
- پروتکلهای اینترنتی و پشتیبانی
webbrowser--- کنترلکنندهی کمکی مرورگر وبwsgiref--- ابزارهای WSGI و پیادهسازی مرجعurllib--- ماژولهای مدیریت URLurllib.request--- کتابخانهی گسترشپذیر برای باز کردن URLهاurllib.response--- کلاسهای پاسخ مورد استفاده urlliburllib.parse--- تجزیه URLها به کامپوننتهاurllib.error--- کلاسهای استثنا که توسط urllib.request پرتاب میشوندurllib.robotparser--- پارسر برای robots.txthttp--- ماژولهای HTTPhttp.client--- کلاینت پروتکل HTTPftplib--- کلاینت پروتکل FTPpoplib--- کلاینت پروتکل POP3imaplib--- کلاینت پروتکل IMAP4smtplib--- کلاینت پروتکل SMTPuuid--- اشیای UUID مطابق RFC 9562socketserver--- چارچوبی برای سرورهای شبکهhttp.server--- سرورهای HTTPhttp.cookies--- مدیریت وضعیت HTTPhttp.cookiejar--- مدیریت کوکیها برای کلاینتهای HTTPxmlrpc--- ماژولهای سرور و کلاینت XMLRPCxmlrpc.client--- دسترسی کلاینت XML-RPCxmlrpc.server--- سرورهای XML-RPC پایهipaddress--- کتابخانهی دستکاری IPv4/IPv6
- خدمات چندرسانهای
- بینالمللیسازی
- رابطهای کاربری گرافیکی با Tk
tkinter--- رابط پایتون به Tcl/Tktkinter.colorchooser--- پنجرهی انتخاب رنگtkinter.font--- پوششی برای فونت Tkinter- دیالوگهای Tkinter
tkinter.messagebox--- اعلانهای پیام Tkintertkinter.scrolledtext--- ابزارک متن پیمایششدهtkinter.dnd--- پشتیبانی از کشیدن و رها کردنtkinter.ttk--- ابزارکهای دارای پوستهی Tk- IDLE --- ویرایشگر و پوسته پایتون
turtle--- گرافیک لاکپشتی
- ابزارهای توسعه
typing--- پشتیبانی از راهنماهای نوعpydoc--- تولیدگر مستندات و سامانهی راهنمای برخط- حالت توسعه پایتون
doctest--- آزمون مثالهای تعاملی پایتونunittest--- چارچوب آزمون واحدunittest.mock--- کتابخانهی شیء ماکunittest.mock--- شروع به کارtest--- بسته آزمونهای رگرسیون برای پایتونtest.support--- ابزارهایی برای بدنهی آزمون پایتونtest.support.socket_helper--- ابزارهایی برای آزمونهای سوکتtest.support.script_helper--- ابزارهایی برای آزمونهای اجرای پایتونtest.support.bytecode_helper--- ابزارهای پشتیبانی برای آزمون تولید صحیح بایتکدtest.support.threading_helper--- ابزارهایی برای آزمونهای نخبندیtest.support.os_helper--- ابزارهایی برای آزمونهای ostest.support.import_helper--- ابزارهای کمکی برای آزمونهای ایمپورتtest.support.warnings_helper--- ابزارهایی برای آزمونهای هشدارها
- اشکالزدایی و پروفایلگیری
- بستهبندی و توزیع نرمافزار
- خدمات رانتایم پایتون
sys--- پارامترها و توابع مختص سیستمsys.monitoring--- پایش رویدادهای اجراsysconfig--- دسترسی به اطلاعات پیکربندی پایتون را فراهم میکندbuiltins--- اشیای توکار__main__--- محیط سطحبالای کدwarnings--- کنترل هشدارdataclasses--- کلاسهای دادهcontextlib--- ابزارهایی برای زمینههای دستورwithabc--- کلاسهای پایه انتزاعیatexit--- هندلرهای خروجtraceback--- چاپ یا بازیابی ردگیری پشته__future__--- تعاریف دستورات آیندهgc--- رابط زبالهروinspect--- بازرسی اشیاء زندهannotationlib--- امکاناتی برای دروننگری حاشیهنویسیهاsite--- قلاب پیکربندی مختص سایت
- مفسرهای سفارشی پایتون
- ایمپورت ماژولها
zipimport--- ایمپورت ماژولها از آرشیوهای Zippkgutil--- ابزار گسترش بستهmodulefinder--- یافتن ماژولهای استفادهشده توسط یک اسکریپتrunpy--- یافتن و اجرای ماژولهای پایتونimportlib--- پیادهسازیimportimportlib.resources-- خواندن، باز کردن و دسترسی به منابع بستهimportlib.resources.abc-- کلاسهای پایه انتزاعی برای منابعimportlib.metadata-- دسترسی به فرادادهی بسته- مقداردهی اولیهی مسیر جستجوی ماژول
sys.path
- خدمات زبان پایتون
ast--- درختهای سینتکس انتزاعیsymtable--- دسترسی به جدولهای نماد کامپایلرtoken--- ثابتهای مورد استفاده در درختهای تجزیه پایتونkeyword--- آزمایش کلیدواژههای پایتونtokenize--- توکنساز (Tokenizer) برای کد منبع پایتونtabnanny--- تشخیص تورفتگی مبهمpyclbr--- پشتیبانی از مرورگر ماژول پایتونpy_compile--- کامپایل پروندههای منبع پایتونcompileall--- کامپایل بایتی کتابخانههای پایتونdis--- واساز برای بایتکد پایتونpickletools--- ابزارهایی برای توسعهدهندگان pickle
- سرویسهای خاص MS Windows
- خدمات مختص یونیکس
shlex--- تحلیل واژگانی سادهposix--- رایجترین فراخوانیهای سیستمی POSIXpwd--- پایگاه دادهی گذرواژهgrp--- پایگاه داده گروهtermios--- کنترل tty به سبک POSIXtty--- توابع کنترل پایانهpty--- ابزارهای شبهپایانهfcntl--- فراخوانیهای سیستمیfcntlوioctlresource--- اطلاعات مصرف منابعsyslog--- روالهای کتابخانهای syslog یونیکس
- رابط خط فرمان ماژولها
- ماژولهای جایگزینشده
- ماژولهای حذفشده
- ملاحظات امنیتی