افرادی که از زبانهای ++C/C به پایتون میآیند، اغلب میپرسند که چطور میتوانند دو یا تعداد بیشتری متغیر یا عبارت را بدون اینکه به خط جدید بروند، چاپ کنند. چون تابع ()print در پایتون به طور خودکار با یک خط جدید به پایان میرسد.
پایتون فرمت از پیش تعریفشدهای دارد که اگر از دستور print(a_variable) استفاده کنید، اشارهگر به طور خودکار به خط بعدی منتقل میشود.
مثال:
Input: [data,datayad]
Output: data datayad
Input: a = [1, 2, 3, 4]
Output: 1 2 3 4
print("data") print("datayad")
خروجی:
data
datayad
همانطور که میبینید، بعد از چاپ عبارت اول، دستور دوم در خط بعدی چاپ میشود.
اما گاهی اوقات پیش میآید که ما نمیخواهیم به خط بعدی برویم، بلکه میخواهیم عبارات مورد نظر را در همان خط چاپ کنیم. پس چه کاری میتوان انجام داد؟
راهحلی که در اینجا بحث میشود، کاملاً به نسخه پایتونی که استفاده میکنید بستگی دارد.
چاپ بدون انتقال به خط جدید در پایتون ۳
در پایتون ۳، تابع ()print کمی متفاوت از پایتون ۲ عمل میکند. و برای چاپ کردن بدون انتقال به خط جدید در پایتون ۳، میتوانید از پارامتر end در تابع ()print استفاده کنید.
# Python 3 code for printing # on the same line printing # data and datayad # in the same line print("data", end =" ") print("datayad") # array a = [1, 2, 3, 4] # printing a element in same # line for i in range(4): print(a[i], end =" ")
خروجی:
data datayad 1 2 3 4
چاپ بدون انتقال به خط جدید در پایتون ۳ بدون استفاده از حلقه For
در پایتون ۳، شما میتوانید بدون استفاده از حلقه for و بدون انتقال به خط جدید عبارات مورد نظرتان را چاپ کنید، این کار با استفاده از پارامتر sep در تابع ()print قابل انجام است. پارامتر sep مشخص میکند که چه جداکنندهای بین آیتمهای در حال چاپ استفاده شود.
# Print without newline in Python 3.x without using for loop l = [1, 2, 3, 4, 5, 6] # using * symbol prints the list # elements in a single line print(*l)
خروجی:
1 2 3 4 5 6
چاپ بدون انتقال به خط جدید با استفاده از ماژول sys در پایتون
برای استفاده از ماژول sys، ابتدا باید با استفاده از کلیدواژه import، ماژول sys را وارد برنامه کنید. سپس، از متد ()stdout.write که در درون ماژول sys قرار دارد، برای چاپ رشتههای خود استفاده کنید. این روش فقط با رشتهها کار میکند؛ اگر شما یک عدد یا لیست را وارد کنید، با خطای TypeError مواجه خواهید شد.
import sys sys.stdout.write("datayad ") sys.stdout.write("is the best website for coding!")
خروجی:
datayad is the best website for coding!