تا حالا شده که دلتون بخواد خروجی برنامه‌های پایتونیتون تو ترمینال، فقط یه مشت متن خشک و خالی نباشه؟ شاید دوست داشتید رنگ و لعاب بیشتری داشته باشه، یا اطلاعات رو به شکل منظم‌تر و جذاب‌تری نمایش بدید. خبر خوب اینجاست که این رویا با به راحتی محقق میشه!

تو این مقاله از Knowxis، قراره با هم سفری هیجان‌انگیز به دنیای زیباسازی ترمینال پایتون داشته باشیم و ببینیم چطور با Rich، برنامه‌هامون رو از یه صفحه سیاه و سفید ساده، به یه تجربه کاربری بصری و دلنشین تبدیل کنیم. آماده‌اید؟ پس بزن بریم!

زیباسازی برنامه های پایتون Python

پایتون: زبان همه‌فن‌حریف برنامه‌نویسی:

قبل از اینکه غرق در دنیای Rich بشیم، بیاید یه نگاهی سریع به خود پایتون بندازیم. پایتون با سینتکس ساده و خواناییش، مثل یه دوست قدیمی و صمیمی، همیشه آماده کمک به برنامه نویس هاست. این زبان سطح بالا، شیءگرا و متن‌باز، گویی برای راحت‌تر کردن زندگی برنامه‌نویس‌ها طراحی شده.

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


pip3 install --user rich
pip install rich

اگر تازه وارد دنیای جذاب پایتون شدید یا می‌خواید مهارت‌هاتون رو ارتقا بدید، حتماً یه سری به بزنید. پکیج‌های آموزشی ما جوری طراحی شدن که از صفر تا صد، شما رو به یک پایتون‌کار حرفه‌ای تبدیل کنن!

Rich چیه و چرا بهش نیاز داریم؟

حالا برگردیم به Rich! این کتابخانه فوق‌العاده، مثل یه جعبه ابزار جادویی برای ترمینال شماست. با Rich می‌تونید:

  • متن‌های رنگی و استایل‌دار چاپ کنید.
  • جداول زیبا و منظم بسازید.
  • نوار پیشرفت (Progress Bar) به برنامه‌هاتون اضافه کنید.
  • کدهای پایتون رو با هایلایت سینتکس نمایش بدید.
  • و کلی کار دیگه که خروجی برنامه‌هاتون رو از این رو به اون رو می‌کنه!
  • 
    from rich import pretty
    pretty.install()
    

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

    نصب و آماده‌سازی Rich:

    نصب این کتابخانه از اون چیزی که فکر می‌کنید آسون‌تره. فقط کافیه ترمینال یا Command Prompt رو باز کنید و یکی از دستورات زیر رو وارد کنید:

    pip install rich

    یا اگر چند نسخه پایتون دارید:

    pip3 install rich

    به همین سادگی! Rich حالا آماده‌ست تا برنامه‌های شما رو متحول کنه.

    اولین قدم‌ها با Rich در کنسول پایتون:

    یکی از جالب‌ترین قابلیت‌های Rich برای شروع، pretty.install() هست. این دستور، خروجی‌های پیش‌فرض پایتون (مثل نمایش لیست‌ها و دیکشنری‌ها) رو به شکل قابل فهم‌تر و رنگی‌تری نشون میده. کافیه این کد رو تو فایل پایتونتون اضافه کنید:

    from rich import pretty
    pretty.install()

    شاید در نگاه اول تغییر خاصی نبینید، اما وقتی شروع به چاپ متغیرهای پیچیده کنید، متوجه جادوی Rich میشید!

    قابلیت‌های کلیدی Rich برای زیباسازی ترمینال:

    برای دسترسی به بیشتر امکانات Rich، باید شیء Console رو بسازید:

    from rich.console import Console
    console = Console()

    چاپ متن با استایل دلخواه (console.print()):

    دیگه وقتشه که تابع print قدیمی رو کنار بذاریم و به console.print سلام کنیم! با این تابع می‌تونید متن‌ها رو با رنگ، فونت، پس‌زمینه و حتی ایموجی‌های مختلف چاپ کنید. Rich از یک سینتکس ساده به نام Console Markup برای این کار استفاده می‌کنه:

    console.print("[bold red]هشدار![/bold red] این یک پیام [yellow reverse]مهم[/yellow reverse] است! :rocket:")

    نمایش اطلاعات با جزئیات بیشتر (console.log()):

    متد log شبیه به print عمل می‌کنه، اما اطلاعات بیشتری مثل زمان و نام فایل رو به خروجی اضافه می‌کنه که برای دیباگ کردن فوق‌العاده کاربردیه:

    console.log("داده‌های کاربر:", {"نام": "علی", "سن": 30})

    خطوط جداکننده زیبا (console.rule()):

    برای اینکه بخش‌های مختلف خروجی‌تون رو از هم جدا کنید و بهشون نظم بدید، console.rule بهترین گزینه است. می‌تونید عنوان و رنگ هم براش مشخص کنید:

    console.rule("[bold blue]پایان گزارش[/bold blue]")

    مدیریت خروجی‌های طولانی (console.pager()):

    وقتی خروجی برنامه‌تون خیلی طولانیه و تو یه صفحه جا نمیشه، console.pager وارد عمل میشه. این قابلیت مثل دستور در لینوکس عمل می‌کنه و به کاربر اجازه میده متن رو به آرامی پیمایش کنه:

    long_text = """این یک متن بسیار طولانی است که برای نمایش قابلیت pager طراحی شده است. 
    " * 50
    console.pager(long_text)

    سوالات متداول درباره Rich:

    آیا Rich فقط برای زیباسازی متنه یا کاربردهای دیگه‌ای هم داره؟

    نه تنها Rich برای زیباسازی متنه، بلکه قابلیت‌های پیشرفته‌تری مثل نمایش درخت directory، رندربندی markdown، نمایش استثناها (Traceback) به شکل خوانا و حتی ساخت پنل‌های اطلاعاتی رو هم ارائه میده. این کتابخانه ابزاری کامل برای بهبود تجربه کاربری در برنامه‌های CLI پایتونه.

    آیا Rich با تمام ترمینال‌ها سازگاره؟

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

    جمع‌بندی:

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

    پس دیگه منتظر چی هستید؟ Rich رو نصب کنید و شروع به بازی با رنگ‌ها، جداول و استایل‌ها کنید. مطمئن باشید از نتیجه کارتون شگفت‌زده میشید! برای یادگیری عمیق‌تر و پروژه‌های عملی‌تر، حتماً از استفاده کنید.

    
    from rich.console import Console
    console = Console()