از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
پایتون: بررسی کنید که آیا متغیر یک رشته است یا خیر
سرفصلهای مطلب
معرفی
پایتون یک زبان تایپ شده پویا است و انواع داده های متغیر بدون دخالت صریح توسط توسعه دهنده استنباط می شوند.
اگر کدی داشتیم که به یک رشته نیاز دارد تا درست کار کند، اما فاقد راهنمایی نوع بود، که اختیاری است، چگونه میتوانیم در صورت استفاده از متغیر از خطا جلوگیری کنیم. نیست یک رشته؟
در این آموزش نگاهی به این خواهیم داشت چگونه می توان بررسی کرد که آیا یک متغیر یک رشته در پایتون است یا خیر، با استفاده از type()
و isinstance()
توابع، و همچنین is
اپراتور:
توسعه دهندگان معمولا استفاده می کنند type()
و is
اگرچه، اینها می توانند در زمینه های خاصی محدود شوند، در این صورت، بهتر است از آن استفاده کنید isinstance()
تابع.
بررسی کنید که آیا متغیر یک رشته با است type()
ساخته شده در type()
تابع را می توان برای برگرداندن نوع داده یک شی مورد استفاده قرار داد. به عنوان مثال، ما انتظار داریم که مقدار بازگشتی این تابع باشد <class 'str'>
.
بیایید یک متغیر رشته را با چند متغیر غیر رشته ای مقداردهی اولیه کنیم و این تابع را آزمایش کنیم:
string = "'Do, or do not. There is no try.' - Yoda"
integer = 42
float = 3.14
print("The type of string is ", type(string))
print("The type of integer is ", type(number))
print("The type of float is ", type(float))
حال، اگر این کد را اجرا کنیم، به این نتیجه می رسد:
"The type of string is <class 'str'>"
"The type of integer is <class 'int'>"
"The type of float is <class 'float'>"
برای اعمال این منطق به نحوی که بتوانیم جریان کد را تغییر دهیم، میتوانیم مقدار برگشتی را با هم مقایسه کنیم type()
عملکرد با str
کلاس:
user_name = 35
if (type(user_name)) == str:
print("User's name is a string")
else:
print("User's name is not a string")
این منجر به:
User's age is not a string
بررسی کنید که آیا متغیر یک رشته با است است اپراتور
پایتون is
عملگر یک عملگر هویت است، به این معنی که بررسی می کند که آیا دو متغیر مقایسه شده به یک مکان حافظه اشاره می کنند یا خیر.
درست مانند مثال قبلی، ما نتیجه را با هم مقایسه کردیم type()
عملکرد با str
کلاس، ما همچنین می توانیم استفاده کنیم is
اپراتور:
user_name = "John Doe"
if (type(user_name)) is str:
print("User's name is a string")
else:
print("User's name is not a string")
این منجر به:
User's name is a string
بررسی کنید که آیا متغیر یک رشته با است instance()
در حال حاضر، ایمن ترین رویکرد برای شکست، این است isinstance()
تابع. این دو آرگومان را می پذیرد – متغیری که در حال بررسی آن هستیم و نوعی که بررسی می کنیم.
در مورد ما، آن یک متغیر خواهد بود و str
کلاس
بیایید چند متغیر ایجاد کنیم و انواع آنها را بررسی کنیم:
string = "Hello there!"
integer = 42
print("Is string a string?: ", isinstance(string, str))
print("Is integer a string?: ", isinstance(integer, str))
این منجر به:
"Is string a string?: True"
"Is integer a string?: False"
نتیجه
پایتون زبانی است که به صورت پویا تایپ میشود که خطاهای زیادی توسط کاربر ایجاد میکند. در بسیاری از موارد، ما هیچ تضمینی نداریم که متغیری که به یک متد ارسال میشود، از نوعی باشد که انتظار داریم در آن باشد.
در این آموزش، ما سه راه را برای بررسی اینکه آیا یک متغیر یک رشته در پایتون است، پوشش داده ایم – با استفاده از type()
و isinstance()
توابع، و همچنین is
اپراتور.
(برچسبها به ترجمه)# python
منتشر شده در 1403-01-12 05:04:07