پایتونمقدماتی۶ دقیقه مطالعهPython 3.12+

نخستین برنامه کامل

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

آنچه در این درس می‌آموزید

  • یک فایل پایتون را از خط فرمان اجرا کنید
  • کامنت بنویسید و آرگومان‌های sep و end را در print به کار ببرید
  • دو خطای رایج SyntaxError و NameError را از هم تشخیص دهید
نویسنده: تیم داکنامه · بازبینی: ۲۰۲۶-۱۰-۳۰
فهرست مطالب

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

ساخت و اجرای فایل برنامه

یک پوشه برای تمرین‌های خود بسازید و در آن فایلی به نام card.py ایجاد کنید با این محتوا:

card.py
print("=== My Card ===")
print("Name:", "Maryam")
print("City:", "Shiraz")
خروجی کد

=== My Card === Name: Maryam City: Shiraz

حالا در خط فرمان، داخل همان پوشه، برنامه را اجرا کنید:

bash
python card.py

پایتون فایل را از سطر اول شروع می‌کند و هر دستور را به‌ترتیب از بالا به پایین اجرا می‌کند. دقت کنید در print("نام:", "مریم") دو مقدار با ویرگول داده‌ایم؛ تابع print هرچه به آن بدهید را با یک فاصله بین‌شان چاپ می‌کند.

کامنت؛ یادداشت برای انسان‌ها

هر خطی که با علامت # شروع شود، کامنت (توضیح) است و پایتون هنگام اجرا آن را کامل نادیده می‌گیرد. کامنت فقط برای انسان‌ها نوشته می‌شود:

sequence.py
# This program shows the execution order
print("first")
print("second")
# print("third") — this line does not run
print("fourth")
خروجی کد

first second fourth

کامنت را به دو کار محدود نکنید: توضیح «چرا»ی یک تصمیم، و موقتاً خاموش کردن یک خط هنگام اشکال‌زدایی. توضیح دادن چیزی که کد واضحش می‌کند، فقط شلوغی است.

تابع print انعطاف بیشتری دارد. دو آرگومان اختیاری مهم آن sep (جداکننده بین مقادیر) و end (چیزی که به‌جای خط جدید در انتها چاپ می‌شود) هستند:

print_details.py
print("0912", "345", "6789", sep="-")
print("Loading", end="...")
print("done")
خروجی کد

0912-345-6789 Loading...done

در سطر اول، سه مقدار به‌جای فاصله با خط تیره از هم جدا شده‌اند. در سطر دوم و سوم، چون end="..." گذاشته‌ایم، بعد از «Loading» به خط بعدی نمی‌رویم و کلمه «done» همان‌جا می‌نشیند. رفتار پیش‌فرض هر دو را حدس زده‌اید: sep پیش‌فرضش فاصله است و end پیش‌فرضش خط جدید.

خطا دشمن شما نیست

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

broken.py
print("hello
خروجی کد

SyntaxError: unterminated string literal (detected at line 1)

این یک خطای نحوی (SyntaxError) است؛ یعنی کد از نظر قواعد زبان ناقص است و اصلاً اجرا نمی‌شود. حالا حالت دوم؛ نام تابع را اشتباه بنویسید:

python
Print("hello")
خروجی کد

NameError: name 'Print' is not defined. Did you mean: 'print'?

کد پایتون به بزرگی و کوچکی حروف حساس است؛ Print با حرف بزرگ برای پایتون نامی ناشناخته است. پیام حتی پیشنهاد هم می‌دهد: «Did you mean: 'print'?». این خطا در میانه اجرا رخ می‌دهد، یعنی خط‌های قبل از آن اجرا شده‌اند.

تمرین‌ها

تمرین

تمرین ۱ — فاکتور خرید

برنامه‌ای بنویسید که نام سه کالا را در یک فراخوانی print چاپ کند و بین آن‌ها علامت | بگذارد، به‌طوری که خروجی یک خط باشد: «کتاب | قلم | دفتر».

python
# Write your code here
نمایش راه‌حل
python
# Three items with a custom separator
print("Book", "Pen", "Notebook", sep=" | ")
خروجی کد

Book | Pen | Notebook

::: :::

خلاصه

  • برنامه پایتون را در فایل با پسوند .py می‌نویسید و با دستور python filename.py اجرا می‌کنید.
  • پایتون دستورها را از بالا به پایین و به‌ترتیب اجرا می‌کند.
  • خط‌های # کامنت‌اند؛ فقط برای انسان خوانده می‌شوند و اجرا نمی‌شوند.
  • آرگومان sep جداکننده بین مقادیر و end ادامه‌دهنده خط است؛ پیش‌فرض‌شان فاصله و خط جدید است.
  • SyntaxError یعنی مشکل نحو و اجرای صفر؛ NameError یعنی نامی که پایتون نمی‌شناسد.

در درس بعدی به سراغ متغیرها می‌رویم؛ سنگ بنایی که هر برنامه‌ای، از ساده تا پیچیده، روی آن بنا می‌شود.

منابع و ارجاع‌ها