Searching...
فارسی
EnglishEnglish
EspañolSpanish
简体中文Chinese
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
Python Cookbook

Python Cookbook

Recipes for Mastering Python 3
توسط David Beazley 2002 704 صفحات
4.17
1.0K امتیازها
گوش دادن
Try Full Access for 7 Days
Unlock listening & more!
Continue

نکات کلیدی

۱. قابلیت‌های قدرتمند پایتون در پردازش رشته‌ها

پایتون امکان بارگذاری مجدد عملگرها را با تعریف متدهای ویژه در کلاس‌ها فراهم می‌کند (یعنی متدهایی که نامشان با دو زیرخط آغاز و پایان می‌یابد).

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

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

گزینه‌های قالب‌بندی رشته:

  • f-string (از نسخه ۳.۶ به بعد)
  • متد str.format()
  • قالب‌بندی با علامت درصد (روش قدیمی‌تر)

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

۲. مدیریت کارآمد فایل‌ها و عملیات دایرکتوری

پایتون مفاهیم خروجی (دستور print) و قالب‌بندی (عملگر %) را جدا کرده است، اما اگر بخواهید این دو را با هم ترکیب کنید، این کار به‌سادگی امکان‌پذیر است.

ورودی/خروجی فایل ساده و مؤثر. قابلیت‌های پایتون در مدیریت فایل به گونه‌ای طراحی شده‌اند که هم ساده و هم کارآمد باشند. استفاده از دستور with تضمین می‌کند که فایل‌ها به‌درستی بسته شوند و متدهایی مانند read()، write() و seek() کنترل دقیق بر عملیات فایل را ممکن می‌سازند.

سازگاری چندسکویی. ماژول‌های os و os.path در پایتون بسیاری از جزئیات وابسته به سیستم‌عامل را پنهان می‌کنند و به توسعه‌دهندگان اجازه می‌دهند کدی بنویسند که روی سیستم‌عامل‌های مختلف به‌طور یکنواخت اجرا شود. این ویژگی به‌ویژه برای کار با فایل‌ها و دایرکتوری‌ها بسیار ارزشمند است.

عملیات کلیدی روی فایل و دایرکتوری:

  • خواندن و نوشتن فایل‌ها
  • جستجو در فایل‌ها و دایرکتوری‌ها
  • تغییر ویژگی‌های فایل
  • فشرده‌سازی و آرشیو کردن فایل‌ها

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

۳. زمان و پول: دقت در محاسبات و تبدیل‌ها

پایتون نسخه ۲.۴ پشتیبانی از اعداد اعشاری را معرفی کرد (و می‌توان این پشتیبانی را به نسخه ۲.۳ نیز افزود)، که پایتون را به گزینه‌ای مناسب برای محاسباتی تبدیل می‌کند که باید از اعداد اعشاری دودویی اجتناب شود، مانند محاسبات مالی.

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

مدیریت و تبدیل زمان. ماژول datetime مجموعه‌ای کامل از ابزارها برای کار با تاریخ، زمان و مناطق زمانی ارائه می‌دهد. این قابلیت برای برنامه‌هایی که با زمان‌بندی، محاسبات زمانی و داده‌های زمانی سروکار دارند، ضروری است.

ویژگی‌های کلیدی در مدیریت زمان و پول:

  • اشیاء datetime با آگاهی از منطقه زمانی
  • محاسبه مدت زمان با timedelta
  • قالب‌بندی و تبدیل ارز
  • عملیات دقیق حسابی با اشیاء Decimal

این امکانات پایتون را به گزینه‌ای قدرتمند برای توسعه برنامه‌های مالی، زمان‌بندی و سایر حوزه‌هایی که دقت در محاسبات زمانی و مالی اهمیت دارد، تبدیل می‌کند.

۴. میانبرهای پایتون برای افزایش بهره‌وری کدنویسی

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

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

توابع داخلی برای کارهای معمول. کتابخانه استاندارد پایتون شامل تعداد زیادی تابع داخلی است که انجام کارهای رایج برنامه‌نویسی را ساده می‌کند. توابعی مانند map()، filter() و zip() امکان برنامه‌نویسی به سبک تابعی را فراهم می‌آورند و اغلب عملیات چندخطی را به یک خط بیانگر تبدیل می‌کنند.

ویژگی‌های افزایش‌دهنده بهره‌وری در پایتون:

  • بازکردن بسته‌بندی مقادیر
  • انتساب چندگانه در یک خط
  • عبارات شرطی (عملگر سه‌تایی)
  • نشانه‌گذاری برش برای توالی‌ها

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

۵. تسلط بر الگوریتم‌های جستجو و مرتب‌سازی

وقتی نیاز به مرتب‌سازی دارید، بهتر است از متد داخلی sort در لیست‌های پایتون استفاده کنید.

مرتب‌سازی بهینه‌شده داخلی. متد sort() و تابع sorted() در پایتون از الگوریتم مرتب‌سازی بسیار بهینه‌ای به نام Timsort بهره می‌برند که عملکرد خوبی روی انواع و اندازه‌های مختلف داده‌ها دارد. این الگوریتم ترکیبی از بهترین ویژگی‌های مرتب‌سازی ادغامی و درج است و برای داده‌های کوچک و بزرگ کارایی عالی ارائه می‌دهد.

رفتار قابل تنظیم مرتب‌سازی. پارامتر key در توابع مرتب‌سازی امکان سفارشی‌سازی انعطاف‌پذیر و کارآمد مرتب‌سازی بر اساس ویژگی‌ها یا مقادیر محاسبه‌شده را فراهم می‌کند. این ویژگی اجازه می‌دهد عملیات مرتب‌سازی پیچیده بدون نیاز به نوشتن توابع مقایسه طولانی انجام شود.

تکنیک‌های جستجوی کارآمد:

  • جستجوی دودویی با ماژول bisect
  • جستجو بر اساس هش با دیکشنری‌ها
  • عملیات مجموعه برای تست عضویت

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

۶. برنامه‌نویسی شیءگرا: رویکرد زیبا و ساده پایتون

برای بهره‌برداری کامل از ویژگی‌های برجسته برنامه‌نویسی شیءگرای پایتون، بهتر است به سبک پایتون از آن‌ها استفاده کنید، نه اینکه بخواهید زبان‌هایی مانند C++، جاوا یا Smalltalk را تقلید کنید.

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

پویا بودن کلاس‌های پایتون. نوع‌گذاری پویا در پایتون به مدل شیءگرای آن نیز تعمیم یافته و امکان تغییر کلاس‌ها و اشیاء در زمان اجرا را فراهم می‌کند. این انعطاف‌پذیری به تکنیک‌های برنامه‌نویسی متا و پیاده‌سازی الگوهای طراحی قدرتمند کمک می‌کند که در زبان‌های ایستا دشوار است.

ویژگی‌های کلیدی شیءگرایی در پایتون:

  • وراثت چندگانه
  • ویژگی‌ها و توصیف‌گرها
  • ترتیب حل متدها (MRO)
  • متدهای ویژه برای بارگذاری عملگرها

این امکانات مجموعه‌ای غنی برای طراحی سیستم‌های پیچیده فراهم می‌آورد و در عین حال خوانایی و انعطاف‌پذیری کد را حفظ می‌کند.

۷. تکنیک‌های پیشرفته پایتون برای برنامه‌های مقاوم

متاکلاس‌ها به معنای «جادوی سیاه عمیق» نیستند.

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

مدیران زمینه برای مدیریت منابع. دستور with و پروتکل مدیر زمینه راهی پاک و پایتونیک برای مدیریت منابع فراهم می‌آورند که عملیات راه‌اندازی و پایان کار را به‌درستی انجام می‌دهد. این ویژگی به‌ویژه برای مدیریت فایل‌ها، اتصال به پایگاه داده و سایر مواردی که نیازمند مدیریت دقیق منابع هستند، بسیار مفید است.

تکنیک‌های پیشرفته پایتون:

  • دکوراتورها برای تغییر توابع و کلاس‌ها
  • مولدها و هم‌تابع‌ها برای تکرار کارآمد
  • کلاس‌های پایه انتزاعی برای تعریف رابط‌ها
  • نوع‌گذاری برای افزایش وضوح کد و پشتیبانی ابزارها

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

آخرین به‌روزرسانی::

نقد و بررسی

4.17 از 5
میانگین از 1.0K امتیازات از Goodreads و Amazon.

کتاب «کتاب آشپزی پایتون» عمدتاً با نقدهای مثبت مواجه شده است و خوانندگان پوشش جامع آن از پایتون ۳ و دستورالعمل‌های کاربردی‌اش را ستایش می‌کنند. بسیاری این کتاب را برای ارتقای مهارت‌های برنامه‌نویسی و یادگیری تکنیک‌های پیشرفته مفید می‌دانند. این اثر به‌عنوان مرجعی ارزشمند برای برنامه‌نویسان باتجربه شناخته می‌شود که راه‌حل‌های شیک و کارآمدی برای مسائل رایج ارائه می‌دهد. برخی نقدها به محتوای قدیمی و فرض داشتن دانش قبلی پایتون اشاره دارند. ساختار منظم کتاب، توضیحات روشن و تمرکز بر شیوه‌های مرسوم پایتون از نکات مورد توجه منتقدان است. در مجموع، این کتاب به‌شدت به توسعه‌دهندگان پایتون در سطح متوسط تا پیشرفته توصیه می‌شود که به دنبال ارتقای مهارت‌های خود هستند.

Your rating:
4.57
34 امتیازها

درباره نویسنده

الکس مارتلی، برنامه‌نویس و نویسنده‌ی فنی ایتالیایی‌تبار، به‌خاطر مشارکت‌هایش در زبان برنامه‌نویسی پایتون و جامعه‌ی آن شناخته شده است. مارتلی نویسنده‌ی چندین کتاب برجسته درباره‌ی پایتون است که از جمله‌ی آن‌ها می‌توان به کتاب‌های محبوب «پایتون در یک نگاه» و «کتاب آشپزی پایتون» اشاره کرد. او همچنین به‌طور گسترده در انجمن‌ها و فهرست‌های پستی آنلاین پایتون فعالیت داشته و با به اشتراک گذاشتن دانش خود، به دیگران در یادگیری این زبان کمک کرده است. مارتلی سابقه‌ی همکاری با شرکت گوگل به‌عنوان مهندس ارشد را دارد و به‌عنوان یکی از اعضای برجسته‌ی بنیاد نرم‌افزاری پایتون شناخته می‌شود. سبک نگارش او به‌خاطر وضوح، اختصار و کاربردی بودنش معروف است و مفاهیم پیچیده را به‌گونه‌ای قابل فهم برای خوانندگان ارائه می‌دهد.

Listen
Now playing
Python Cookbook
0:00
-0:00
Now playing
Python Cookbook
0:00
-0:00
1x
Voice
Speed
Dan
Andrew
Michelle
Lauren
1.0×
+
200 words per minute
Queue
Home
Library
Get App
Create a free account to unlock:
Recommendations: Personalized for you
Requests: Request new book summaries
Bookmarks: Save your favorite books
History: Revisit books later
Ratings: Rate books & see your ratings
100,000+ readers
Try Full Access for 7 Days
Listen, bookmark, and more
Compare Features Free Pro
📖 Read Summaries
All summaries are free to read in 40 languages
🎧 Listen to Summaries
Listen to unlimited summaries in 40 languages
❤️ Unlimited Bookmarks
Free users are limited to 4
📜 Unlimited History
Free users are limited to 4
📥 Unlimited Downloads
Free users are limited to 1
Risk-Free Timeline
Today: Get Instant Access
Listen to full summaries of 73,530 books. That's 12,000+ hours of audio!
Day 4: Trial Reminder
We'll send you a notification that your trial is ending soon.
Day 7: Your subscription begins
You'll be charged on Jul 15,
cancel anytime before.
Consume 2.8x More Books
2.8x more books Listening Reading
Our users love us
100,000+ readers
"...I can 10x the number of books I can read..."
"...exceptionally accurate, engaging, and beautifully presented..."
"...better than any amazon review when I'm making a book-buying decision..."
Save 62%
Yearly
$119.88 $44.99/year
$3.75/mo
Monthly
$9.99/mo
Start a 7-Day Free Trial
7 days free, then $44.99/year. Cancel anytime.
Scanner
Find a barcode to scan

Settings
General
Widget
Loading...