ဂဏန်းတစ်ခုသည် Python တွင် ကိန်းပြည့် သို့မဟုတ် ဒဿမတစ်ခု ဖြစ်မဖြစ် ဆုံးဖြတ်ပါ။
အောက်ပါကိစ္စရပ်များကို နမူနာကုဒ်များဖြင့် ရှင်းပြထားသည်။
- ဂဏန်းတစ်ခုသည် ကိန်းပြည့် int သို့မဟုတ် မျှော့ဖျော့ဖြစ်မဖြစ် ဆုံးဖြတ်သည်။:
isinstance()
- float အမျိုးအစားနံပါတ်သည် ကိန်းပြည့်ဖြစ်မဖြစ် ဆုံးဖြတ်သည် (0 ဒသမ နေရာများ):
float.is_integer()
- နံပါတ်စာကြောင်းတစ်ခုသည် ကိန်းပြည့်ဟုတ်မဟုတ် ဆုံးဖြတ်သည်။
ဒဿမဂဏန်းတစ်ခု၏ ကိန်းပြည့်နှင့် ဒဿမတန်ဖိုးများကို ရယူရန်၊ အောက်ပါဆောင်းပါးကို ကြည့်ပါ။
လိုင်းတစ်ခုသည် ဂဏန်းများ (တရုတ်ဂဏန်းများ အပါအဝင်) ကိန်းပြည့် (သို့) ဒဿမဖြစ်မဖြစ်ကို ဆုံးဖြတ်ခြင်းဆိုင်ရာ အချက်အလက်အတွက် အောက်ပါဆောင်းပါးကို ကြည့်ပါ။
ဂဏန်းတစ်ခုသည် ကိန်းပြည့် သို့မဟုတ် Floating Point အမျိုးအစား ဟုတ်မဟုတ် ဆုံးဖြတ်သည်။:isinstance()
အရာဝတ္ထုအမျိုးအစားကို built-in function type() ဖြင့် ရယူနိုင်ပါသည်။
i = 100
f = 1.23
print(type(i))
print(type(f))
# <class 'int'>
# <class 'float'>
isinstance(object, type)
အရာဝတ္ထုတစ်ခုသည် သီးခြားအမျိုးအစားဟုတ်မဟုတ် ဆုံးဖြတ်ရန် ဤ built-in လုပ်ဆောင်ချက်ကို အသုံးပြုနိုင်သည်။ နံပါတ်တစ်ခုသည် ကိန်းပြည့် သို့မဟုတ် Floating Point အမျိုးအစား ဟုတ်မဟုတ် ဆုံးဖြတ်ရန် ၎င်းကို အသုံးပြုနိုင်သည်။
print(isinstance(i, int))
# True
print(isinstance(i, float))
# False
print(isinstance(f, int))
# False
print(isinstance(f, float))
# True
ဤကိစ္စတွင်၊ ၎င်းသည် အမျိုးအစားကိုသာ အဆုံးအဖြတ်ပေးသောကြောင့် float အမျိုးအစားတန်ဖိုးသည် ကိန်းပြည့် (ဒဿမအမှတ် 0) ရှိ၊ မရှိ မဆုံးဖြတ်နိုင်ပါ။
f_i = 100.0
print(type(f_i))
# <class 'float'>
print(isinstance(f_i, int))
# False
print(isinstance(f_i, float))
# True
float အမျိုးအစားနံပါတ်သည် ကိန်းပြည့်ဖြစ်မဖြစ် ဆုံးဖြတ်သည် (0 ဒသမ နေရာများ):float.is_integer()
is_integer() method ကို float အမျိုးအစားအတွက် ထောက်ပံ့ပေးထားပြီး၊ တန်ဖိုးသည် ကိန်းပြည့်ဖြစ်ပြီး အခြားမဟုတ်ပါက false ဖြစ်ပါက true ပြန်ပေးပါသည်။
f = 1.23
print(f.is_integer())
# False
f_i = 100.0
print(f_i.is_integer())
# True
ဥပမာအားဖြင့်၊ ကိန်းပြည့်နံပါတ်တစ်ခုအတွက် true ပြန်ပေးသည့်လုပ်ဆောင်ချက်ကို အောက်ပါအတိုင်း သတ်မှတ်နိုင်သော်လည်း အခြားတစ်ဖက်တွင်၊ string type သည် false ဖြစ်လိမ့်မည်။
def is_integer_num(n):
if isinstance(n, int):
return True
if isinstance(n, float):
return n.is_integer()
return False
print(is_integer_num(100))
# True
print(is_integer_num(1.23))
# False
print(is_integer_num(100.0))
# True
print(is_integer_num('100'))
# False
နံပါတ်စာကြောင်းတစ်ခုသည် ကိန်းပြည့်ဟုတ်မဟုတ် ဆုံးဖြတ်သည်။
ကိန်းပြည့်ဂဏန်းတစ်လိုင်းသည် ကိန်းပြည့်တစ်ခုဖြစ်ကြောင်း သင်ဆုံးဖြတ်လိုပါက၊ အောက်ပါလုပ်ဆောင်ချက်များ ဖြစ်နိုင်သည်။
float() ဖြင့် float အမျိုးအစားသို့ ပြောင်းလဲနိုင်သည့် တန်ဖိုးများအတွက် is_integer() နည်းလမ်းကို float အဖြစ် ပြောင်းလဲပြီးနောက် ရလဒ်ကို ပြန်ပေးပါသည်။
def is_integer(n):
try:
float(n)
except ValueError:
return False
else:
return float(n).is_integer()
print(is_integer(100))
# True
print(is_integer(100.0))
# True
print(is_integer(1.23))
# False
print(is_integer('100'))
# True
print(is_integer('100.0'))
# True
print(is_integer('1.23'))
# False
print(is_integer('string'))
# False
ကြိုးများကို နံပါတ်များသို့ ပြောင်းခြင်းဆိုင်ရာ အသေးစိတ်အချက်အလက်များအတွက် အောက်ပါဆောင်းပါးကို ကြည့်ပါ။
ကြိုးတစ်ချောင်းသည် နံပါတ် (တရုတ်ဂဏန်းများ အပါအဝင်) အပါအဝင်) ကို ဆုံးဖြတ်ခြင်းဆိုင်ရာ အသေးစိတ်အချက်အလက်များအတွက် အောက်ပါဆောင်းပါးကို ကြည့်ပါ။