Python හි සංඛ්යාවක් පූර්ණ සංඛ්යාවක් ද දශමයක් ද යන්න තීරණය කරන්න.
පහත අවස්ථා නියැදි කේත සමඟ පැහැදිලි කර ඇත.
- සංඛ්යාවක් පූර්ණ සංඛ්යාවක් ද නැතහොත් පාවෙන ලක්ෂ්ය පාවෙන එකක් ද යන්න තීරණය කරයි:
isinstance()
- පාවෙන ආකාරයේ අංකයක් පූර්ණ සංඛ්යාවක් දැයි තීරණය කරයි (දශමස්ථාන 0):
float.is_integer()
- සංඛ්යා තන්තුවක් පූර්ණ සංඛ්යාවක් දැයි තීරණය කරයි
දශම සංඛ්යාවක නිඛිල සහ දශම අගයන් ලබා ගැනීමට පහත ලිපිය බලන්න.
තන්තුවක් නිඛිලයක් ද දශමයක් ද යන්නට වඩා සංඛ්යාවක් (චීන ඉලක්කම් ආදිය ඇතුළුව) යන්න තීරණය කිරීම පිළිබඳ තොරතුරු සඳහා පහත ලිපිය බලන්න.
සංඛ්යාවක් පූර්ණ සංඛ්යාවක් ද පාවෙන ලක්ෂ්ය වර්ගයක් ද යන්න තීරණය කරයි:isinstance()
වස්තුවක වර්ගය බිල්ට්-ඉන් ශ්රිත වර්ගය() සමඟින් ලබා ගත හැක.
i = 100
f = 1.23
print(type(i))
print(type(f))
# <class 'int'>
# <class 'float'>
isinstance(object, type)
වස්තුවක් විශේෂිත වර්ගයක දැයි තීරණය කිරීමට මෙම බිල්ට්-ඉන් ශ්රිතය භාවිතා කළ හැක. සංඛ්යාවක් පූර්ණ සංඛ්යාවක්ද පාවෙන ලක්ෂ්ය වර්ගයක්ද යන්න තීරණය කිරීමට මෙය භාවිතා කළ හැක.
print(isinstance(i, int))
# True
print(isinstance(i, float))
# False
print(isinstance(f, int))
# False
print(isinstance(f, float))
# True
මෙම අවස්ථාවෙහිදී, එය වර්ගය පමණක් විනිශ්චය කරයි, එබැවින් පාවෙන ආකාරයේ අගයක් පූර්ණ සංඛ්යාවක් (0 දශම ලක්ෂ්යයක් සහිත) හෝ නැද්ද යන්න විනිශ්චය කළ නොහැක.
f_i = 100.0
print(type(f_i))
# <class 'float'>
print(isinstance(f_i, int))
# False
print(isinstance(f_i, float))
# True
පාවෙන ආකාරයේ අංකයක් පූර්ණ සංඛ්යාවක් දැයි තීරණය කරයි (දශමස්ථාන 0):float.is_integer()
float වර්ගය සඳහා is_integer() ක්රමය සපයා ඇත, අගය පූර්ණ සංඛ්යාවක් නම් සත්ය සහ වෙනත් ආකාරයකින් අසත්යය ලබා දෙයි.
f = 1.23
print(f.is_integer())
# False
f_i = 100.0
print(f_i.is_integer())
# True
උදාහරණයක් ලෙස, නිඛිල සංඛ්යාවක් සඳහා සත්ය ලෙස ලැබෙන ශ්රිතයක් පහත පරිදි අර්ථ දැක්විය හැක, අනෙක් අතට, තන්තු වර්ගයක් අසත්ය වේ.
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 වර්ගයට පරිවර්තනය කළ හැකි අගයන් සඳහා, float බවට පරිවර්තනය කිරීමෙන් පසුව is_integer() ක්රමය යොදන අතර ප්රතිඵලය ලබාදේ.
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
තන්තු සංඛ්යා බවට පරිවර්තනය කිරීම පිළිබඳ විස්තර සඳහා පහත ලිපිය බලන්න.
තන්තුවක් අංකයක් ද යන්න තීරණය කිරීම පිළිබඳ විස්තර සඳහා පහත ලිපිය බලන්න (චීන ඉලක්කම්, ආදිය).