مخرجات الطرفية المنسّقة
نسّق مخرجات واجهة سطر الأوامر باستخدام rich
مخرجات الطرفية المنسّقة درس مجاني في Python Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Python Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Python Academy 4 دروس في المجموع.
ما هي rich؟
إن rich مكتبة من جهات خارجية لعرض مخرجات جميلة في الطرفية، مثل الألوان والتنسيقات والجداول وأشرطة التقدم وغير ذلك. ثبّتها باستخدام pip install rich.
from rich import print
print('Hello, [bold magenta]world[/bold magenta]!')كائن Console
الفئة الأساسية هي Console. تفهم دالة print التابعة لها ترميز التنسيق، كما تتولى التفاف النص واكتشاف الألوان.
from rich.console import Console
console = Console()
console.print('Styled output here')
ترميز التنسيق
تستخدم rich ترميزًا بين أقواس مثل [bold] و[red] و[italic] لتنسيق أجزاء من النص داخل السطر، ويُغلق كل جزء بوسم مطابق.
from rich.console import Console
console = Console()
console.print('[bold red]Error:[/bold red] something failed')
console.print('[green]Success[/green]')
وسيط style
بدلًا من الترميز، يمكنك تمرير وسيط style يطبّق التنسيق على السطر بأكمله.
from rich.console import Console
console = Console()
console.print('Important notice', style='bold yellow on blue')
الجداول
تعرض الفئة Table جداول مرتبة ذات حدود. أضف الأعمدة، ثم الصفوف، ثم اطبع الجدول.
from rich.console import Console
from rich.table import Table
table = Table(title='Users')
table.add_column('Name')
table.add_column('Age')
table.add_row('Ana', '30')
table.add_row('Bob', '25')
Console().print(table)
اللوحات
ترسم Panel مربعًا حول المحتوى، وهو مفيد لإبراز الرسائل أو تجميع المخرجات.
from rich.console import Console
from rich.panel import Panel
Console().print(Panel('All systems go', title='Status'))
أشرطة التقدم
يمكن لـ rich عرض أشرطة تقدم مباشرة. وتغلف track() أي عنصر قابل للتكرار، وتعرض التقدم أثناء استهلاكه.
from rich.progress import track
import time
for _ in track(range(5), description='Working'):
time.sleep(0.1)
طباعة البيانات بتنسيق واضح
تعرض console.print القواميس والقوائم مع تمييز الصياغة والمسافات البادئة، وهي أوضح بكثير من print العادية.
from rich.console import Console
data = {'name': 'Ana', 'roles': ['admin', 'user'], 'active': True}
Console().print(data)
السجلات وتتبع الأخطاء
توفر rich تتبعات أخطاء أكثر وضوحًا عبر rich.traceback.install() ومعالج للسجلات، مما يجعل مخرجات الأخطاء أسهل بكثير في القراءة.
from rich.traceback import install
install()
# Now uncaught exceptions print with rich, colorized formatting
القواعد والتخطيط
ترسم console.rule() فاصلًا أفقيًا مع عنوان اختياري، وهو مفيد لتقسيم المخرجات الطويلة إلى أقسام.
from rich.console import Console
console = Console()
console.rule('[bold]Report[/bold]')
console.print('section content')
دمج rich مع Click
تتوافق rich جيدًا مع Click: إذ تنظم Click الأوامر، بينما تنسق rich المخرجات، مما ينتج واجهات CLI احترافية ومصقولة.
import click
from rich.console import Console
console = Console()
@click.command()
@click.argument('name')
def hello(name):
console.print('Hello [bold]' + name + '[/bold]!')
اختبار سريع
اختبر مدى فهمك لـ rich.
مراجعة
لقد تعلمت مخرجات rich في الطرفية:
- تطبع
Consoleالنص باستخدام ترميز التنسيق بين الأقواس ووسيطstyle. - تنظم
TableوPanelوruleالمخرجات، بينما تعرضtrackالتقدم. - تطبع rich البيانات بتنسيق واضح وتحسّن عرض تتبعات الأخطاء.
- إنها مكتبة خارجية تتكامل جيدًا مع Click.
لقد أكملت دورة أدوات CLI!
الأسئلة الشائعة
هل درس «مخرجات الطرفية المنسّقة» مجاني؟
نعم — نص درس «مخرجات الطرفية المنسّقة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Python Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Python Academy 4 دروس في المجموع.
ماذا ستتعلم في «مخرجات الطرفية المنسّقة»؟
نسّق مخرجات واجهة سطر الأوامر باستخدام rich تتمرن على Python Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Python Academy؟
لا تُشترط خبرة سابقة. Python Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «مخرجات الطرفية المنسّقة»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Python Academy هذا؟
نعم. كل درس في Python Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- أساسيات argparse
- الأوامر الفرعية والخيارات
- مكتبة Click
- مخرجات الطرفية المنسّقة