فقط برای مدت محدود؛ 50٪ تخفیف روی دوره‌های سبزلرن — همین حالا با نصف قیمت ثبت‌نام کن!

boolean در پایتون چیست؟

شقایق ستیه نیاشقایق ستیه نیا
15 بهمن 1402
12 دقیقه مطالعه
boolean در پایتون چیست؟

وقتی یک برنامه در پایتون باید بین دو حالت «بله و خیر»، «درست و نادرست» یا «فعال و غیرفعال» تصمیم بگیرد، به یک نوع داده ساده اما بسیار مهم یعنی "boolean" در پایتون نیاز داریم. این نوع داده با دو مقدار "True" و "False" نمایش داده می‌شود و تقریبا تمام برنامه‌نویس‌های حرفه‌ای پایتون در کدهای واقعی خود از شرط‌های ساده گرفته تا پروژه‌های پیچیده از boolean استفاده می‌کنند. در ادامه بررسی می‌کنیم boolean در پایتون چیست، چگونه ساخته می‌شود و چه کاربردی در شرط‌ها، توابع، حلقه‌ها و عملگرهای منطقی دارد.

کاربرد boolean در پایتون چیست؟

بولین (Boolean) در پایتون برای بررسی درست یا نادرست بودن شرایط و تصمیم‌گیری در برنامه استفاده می‌شود. با کمک آن می‌توانید اجرای بخش‌های مختلف برنامه را با "if"، "elif" و "else" کنترل کرده، شرایط مختلف را با "and" و "or" ترکیب و با "not" معکوس کنید. همچنین بولین در بررسی و اعتبارسنجی داده‌های ورودی پایتون، تعیین وضعیت ویژگی‌های برنامه و کنترل حلقه‌های "while" کاربرد دارد. در واقع اگر بخواهیم بگوییم کاربرد اصلی Boolean در پایتون چیست، می‌توانیم به بازگرداندن نتیجه بررسی از توابع و مدیریت دسترسی کاربران نیز اشاره کنیم که در دوره آموزش پایتون نیز در مورد آن صحبت شده است.

python-boolean-values.webp

چگونه یک متغیر Boolean در پایتون بسازیم؟

Boolean یا نوع داده بولین، یکی از انواع داده داخلی پایتون است که فقط دو مقدار دارد:

True
False

True برای نشان‌دادن درست یا برقرار بودن یک وضعیت و False برای نشان‌دادن نادرست یا برقرار نبودن آن استفاده می‌شود. در پایتون، این دو مقدار باید دقیقا با حرف اول بزرگ نوشته شوند؛ بنابراین استفاده از true یا false صحیح نیست. برای ساخت یک متغیر Boolean کافی است یکی از این دو مقدار را به متغیر اختصاص دهید:

is_logged_in = True
has_access = False

print(is_logged_in)
print(has_access)

خروجی:

True
False

نوع این متغیرها نیز bool است. برای بررسی نوع یک متغیر می‌توانید از تابع type() استفاده کنید:

is_active = True
print(type(is_active))

خروجی:

< class 'bool'>

متغیرهای Boolean معمولا برای ذخیره وضعیت یک ویژگی یا شرایط خاص در برنامه استفاده می‌شوند. برای مثال:

is_admin = False
has_discount = True
is_verified = True

نام‌گذاری متغیرهای بولین به این شکل باعث می‌شود وضعیت موردنظر در کد به‌سادگی قابل تشخیص باشد.

پیشنهاد مطالعه: پروژه های پایتون برای تمرین

boolean-operators-in-python.webp

عملگرهای boolean در پایتون

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

عملگر برابری (==)

عملگر برابری (==) دو مقدار را با هم مقایسه می کند و در صورت برابر بودن، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = 1
b = 2
print(a == b)  # False
print(a == 1)  # True

عملگر نابرابری (!=)

عملگر نابرابری (!=) دو مقدار را با هم مقایسه می کند و در صورت نابرابر بودن، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = 1
b = 2
print(a != b)  # True
print(a != 1)  # False

عملگر بزرگتر از (<)

عملگر بزرگتر از (<) دو مقدار را با هم مقایسه می کند و در صورت بزرگتر بودن مقدار اول از مقدار دوم، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = 1
b = 2
print(a < b)  # True
print(a < 1)  # False

پیشنهاد مطالعه: عملگرها در پایتون

عملگر کوچکتر از (>)

عملگر کوچکتر از (>) دو مقدار را با هم مقایسه می کند و در صورت کوچکتر بودن مقدار اول از مقدار دوم، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = 1
b = 2
print(a > b)  # False
print(a > 1)  # False

عملگر بزرگتر یا مساوی (<=)

عملگر بزرگتر یا مساوی (<=) دو مقدار را با هم مقایسه می کند و در صورت بزرگتر یا مساوی بودن مقدار اول از مقدار دوم، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند

a = 1
b = 2
print(a <= b)  # True
print(a <= 1)  # True

عملگر کوچکتر یا مساوی (>=)

عملگر کوچکتر یا مساوی (>=) دو مقدار را با هم مقایسه می کند و در صورت کوچکتر یا مساوی بودن مقدار اول از مقدار دوم، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = 1
b = 2
print(a >= b)  # False
print(a >= 1)  # True

عملگر منطقی and

عملگر منطقی و (and) دو مقدار boolean را به عنوان ورودی دریافت می کند و در صورت درست بودن هر دو مقدار، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = True
b = False
print(a and b)  # False
print(a and a)  # True

عملگر منطقی or

عملگر منطقی یا (or) دو مقدار boolean را به عنوان ورودی دریافت می کند و در صورت درست بودن یکی از دو مقدار، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = True
b = False
print(a or b)  # True
print(a or a)  # True

عملگر منطقی not

عملگر منطقی نه (not) یک مقدار boolean را به عنوان ورودی دریافت می کند و در صورت نادرست بودن مقدار، مقدار True را برمی گرداند. در غیر این صورت، مقدار False را برمی گرداند.

a = True
b = False
print(not a)  # False
print(not b)
boolean-conditions-in-python.webp

استفاده از boolean در کنترل شرط ها

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

age = 25
if age >= 18:
	print("شما بالغ هستید!")
else:
	print("شما هنوز کودک هستید!")

پیشنهاد مطالعه: آموزش دستورات شرطی در پایتون

در این مثال، سن را با عدد ۱۸ مقایسه می‌کنیم. اگر سن بزرگتر مساوی ۱۸ باشد، شرط True می‌شود و دستورات داخل بلوک if اجرا می‌شوند و پیام "شما بالغ هستید!" چاپ می‌شود. در غیر این صورت، شرط False است و دستورات داخل بلوک else اجرا می‌شوند و پیام "شما هنوز کودک هستید!" چاپ می‌شود. با استفاده از عملگرهای مقایسه‌ای مختلف می‌توانید شرایط مختلف را بررسی کنید. همچنین، می‌توانید از عملگرهای منطقی and، or و not برای ترکیب شرایط استفاده کنید و به استنتاج‌های پیچیده‌تری برسید. استفاده از شرط‌ها در پایتون، یکی از ابزارهای قدرتمند برای کنترل جریان برنامه است و به شما امکان می‌دهد برنامه‌ی خود را به صورت شرطی و پویا طراحی کنید.

استفاده از boolean در توابع  پایتون

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

def is_positive(number):
	if number > 0:
    	return True
	else:
    	return False

در این مثال، تابع is_positive یک عدد را به عنوان ورودی دریافت می‌کند. سپس با استفاده از شرط number > 0 بررسی می‌شود که آیا عدد مثبت است یا خیر. اگر شرط برقرار باشد، مقدار True برگردانده می‌شود و در غیر این صورت مقدار False برگردانده می‌شود. می‌توانید از مقادیر بولین در توابع پیچیده‌تر نیز استفاده کنید. به عنوان مثال، برای تعیین اینکه آیا یک رشته حاوی تمام حروف بزرگ است یا خیر، می‌توانید از توابع داخلی پایتون مانند isupper استفاده کنید:

def is_all_uppercase(text):
	if text.isupper():
    	return True
	else:
    	return False

در این مثال، تابع ()is_all_uppercase یک رشته را به عنوان ورودی دریافت می‌کند. سپس با استفاده از تابع ()isupper که برروی رشته فراخوانی می‌شود، بررسی می‌شود که آیا تمام حروف رشته بزرگ هستند یا خیر. اگر شرط برقرار باشد، مقدار True برگردانده می‌شود و در غیر این صورت مقدار False برگردانده می‌شود. استفاده از مقادیر بولین در توابع به شما امکان می‌دهد تا تصمیم‌گیری‌های پیچیده‌تر را درون توابع انجام داده و خروجی مناسب را بر اساس شرایط مختلف تعیین کنید. این قابلیت به شما امکان می‌دهد تا توابعی با رفتار دقیق‌تر و پرکاربرد تر طراحی کنید و برنامه‌های قدرتمندتری بسازید.

استفاده از boolean در حلقه ها

مقادیر بولین (boolean) در حلقه‌ها نیز بسیار کاربرد دارند. با استفاده از شرط‌های بولین، می‌توانید حلقه‌ها را بر اساس وضعیت مشخصی ادامه یا متوقف کنید. در پایتون، دو نوع حلقه رایج وجود دارد: حلقه for و حلقه while. در حلقه for، معمولاً از مقادیر داخل یک ترتیب قابل شمارش (مانند لیست یا رشته) برای تکرار استفاده می‌شود. در این حالت، به طور معمول از تابع range برای تولید ترتیب شمارش استفاده می‌شود. می‌توانید شرایط بولین را در بخش تکرار حلقه for بررسی کرده و بر اساس آن عملکرد حلقه را تغییر دهید. در مثال زیر، از حلقه for برای چاپ اعداد فرد از ۱ تا ۱۰ استفاده می‌کنیم:

for num in range(1, 11):
	if num % 2 == 1:
    	print(num)

در این مثال، با استفاده از تابع range(1, 11)، یک ترتیب شمارش از ۱ تا ۱۰ ایجاد می‌شود. در هر دور از حلقه، شرط num % 2 == 1 بررسی می‌شود. اگر عدد فعلی فرد باشد، شرط True می‌شود و عدد چاپ می‌شود. در غیر این صورت، شرط False است و بدون چاپ به دور بعدی از حلقه می‌رود. در حلقه while، شرایط بولین در بخش تکرار حلقه بررسی می‌شوند. حلقه تا زمانی که شرط برقرار باشد، ادامه پیدا می‌کند و وقتی شرط نادرست است، خارج می‌شود. در مثال زیر، از حلقه while برای چاپ اعداد از ۱ تا ۵ استفاده می‌کنیم:

num = 1
while num <= 5:
	print(num)
	num += 1

در این مثال، شرط num <= 5 در هر دور از حلقه بررسی می‌شود. اگر عدد فعلی کوچکتر یا مساوی ۵ باشد، شرط True می‌شود و عدد چاپ می‌شود. سپس مقدار num با یک افزایش مقدار دهی می‌شود. حلقه تا زمانی که شرط num <= 5 برقرار باشد ادامه می‌یابد و وقتی شرط نادرست است، خارج می‌شود. استفاده از مقادیر بولین در حلقه‌ها به شما امکان می‌دهد تا حلقه‌هایی با رفتار پویا و قابل تنظیم طراحی کنید، که بر اساس شرایط بولین، تکرار و یا متوقف شوند. این قابلیت به شما اجازه می‌دهد که برنامه‌هایی را با رفتار دقیق‌تر و گویا‌تر طراحی کنید.

متدهایی که مقدار Boolean برمی‌گردانند

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

text = "PYTHON"
print(text.isupper())

خروجی:

True

مثال دیگر:

email = "user@example.com"
print("@" in email)

خروجی:

True

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

تفاوت Boolean با اعداد ۰ و ۱ در پایتون

ممکن است هنگام یادگیری Boolean با یک نکته جالب روبه‌رو شوید: bool در پایتون با نوع داده "int" ارتباط نزدیکی دارد و مقادیر "False" و "True" از نظر عددی به‌ترتیب مانند ۰ و ۱ رفتار می‌کنند. برای مثال:

print(int(True))
print(int(False))

خروجی:

1
0

اما این موضوع به این معنی نیست که باید ۰ و ۱ را جایگزین "True" و "False" کنیم. وقتی هدف کد نمایش یک وضعیت منطقی است، استفاده از Boolean خوانایی برنامه را بیشتر می‌کند:

is_active = True

واضح‌تر از این است:

is_active = 1

اشتباهات رایج هنگام کار با Boolean در پایتون

هنگام کار با Boolean در پایتون بعضی اشتباهات می‎‌توانند باعث خطا یا کاهش خوانایی کد شوند که آشنایی با آن‌ها به نوشتن کد صحیح‌تر کمک می‌کند:

  • استفاده از "=" به جای "==": در پایتون، عملگر "=" برای انتساب مقدار به یک متغیر استفاده می‌شود، درحالی‌که "==" برای مقایسه دو مقدار به کار می‌رود. بنابراین هنگام استفاده از شرط‌ها باید برای مقایسه از "==" استفاده کنید.

  • نوشتن true وfalse با حروف کوچک: مقادیر بولی در پایتون به‌صورت دقیق با True و False نوشته می‌شوند و به حروف بزرگ و کوچک حساس هستند. بنابراین نوشتن true یا false باعث خطا می‌شود.

  • مقایسه مستقیم با True در همه شرایط: گاهی افراد برای بررسی درست بودن یک مقدار بولی، آن را به‌صورت مستقیم با True مقایسه می‌کنند. اگر متغیر خودش یک مقدار بولی باشد، معمولاً می‌توان آن را مستقیماً در شرط استفاده کرد. این روش کد را کوتاه‌تر و خواناتر می‌کند.

جمع‌بندی؛ چرا یادگیری Boolean در پایتون مهم است؟

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

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

سوالات متداول

Boolean در پایتون چیست؟

Boolean  نوعی داده در پایتون است که تنها دو مقدار True و False دارد و برای نمایش وضعیت‌های درست و نادرست و تصمیم‌گیری در برنامه استفاده می‌شود.

عملگرهای Boolean در پایتون چه کاربردی دارند؟

عملگرهای Boolean مانند and، or و not برای ترکیب یا تغییر شرایط منطقی استفاده می‌شوند و به برنامه اجازه می‌دهند بر اساس چند شرط مختلف تصمیم‌گیری کند.

تفاوت True و 1 یا False و 0 در پایتون چیست؟

در زبان‌ برنامه‌نویسی پایتون True از نظر عددی مانند 1 و False مانند 0 رفتار می‌کند؛ اما از نظر مفهومی True و False برای نمایش وضعیت منطقی مناسب‌تر و خواناتر هستند.

نظرات

برای ثبت نظر، لطفا وارد حساب کاربری خود شوید.
ورود یا عضویت
هنوز هیچ نظری ثبت نشده!

اولین نفری باش که برای این مقاله نظر میدی.