ਪਤਾ ਕਰੋ ਕਿ ਕੀ ਪਾਈਥਨ ਵਿੱਚ ਕੋਈ ਸੰਖਿਆ ਪੂਰਨ ਅੰਕ ਹੈ ਜਾਂ ਦਸ਼ਮਲਵ।
ਨਿਮਨਲਿਖਤ ਮਾਮਲਿਆਂ ਨੂੰ ਨਮੂਨਾ ਕੋਡਾਂ ਨਾਲ ਸਮਝਾਇਆ ਗਿਆ ਹੈ।
- ਇਹ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ ਕੀ ਕੋਈ ਸੰਖਿਆ ਪੂਰਨ ਅੰਕ ਹੈ ਜਾਂ ਇੱਕ ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ ਫਲੋਟ:
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()
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() ਨਾਲ ਫਲੋਟ ਕਿਸਮ ਵਿੱਚ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ, 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
ਸਟਰਿੰਗਾਂ ਨੂੰ ਸੰਖਿਆਵਾਂ ਵਿੱਚ ਬਦਲਣ ਬਾਰੇ ਵੇਰਵਿਆਂ ਲਈ ਹੇਠਾਂ ਦਿੱਤਾ ਲੇਖ ਦੇਖੋ।
ਇਹ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਕਿ ਕੀ ਇੱਕ ਸਤਰ ਇੱਕ ਨੰਬਰ ਹੈ (ਚੀਨੀ ਸੰਖਿਆਵਾਂ, ਆਦਿ ਸਮੇਤ) ਦੇ ਵੇਰਵਿਆਂ ਲਈ ਹੇਠਾਂ ਦਿੱਤਾ ਲੇਖ ਦੇਖੋ।