อยากจะเช็ตค่า ทศนิยม ถ้าไม่เต็มจำนวน

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: อยากจะเช็ตค่า ทศนิยม ถ้าไม่เต็มจำนวน

Re: อยากจะเช็ตค่า ทศนิยม ถ้าไม่เต็มจำนวน

โดย thatsawan » 26/12/2018 4:57 pm

ได้เเย้วค่ะ
if float(master_total).is_integer():
ครอบ float เข้าไป

Re: อยากจะเช็ตค่า ทศนิยม ถ้าไม่เต็มจำนวน

โดย mindphp » 26/12/2018 4:17 pm

รุปแบบคือ ค่าที่เอามาเช็ค ต้องเป็น float
float.is_integer()

หรือเขียนเช็คเองแบบง่ายๆ mod หารเอาเศษ ด้วย 1

โค้ด: เลือกทั้งหมด

    if n % 1 == 0:
        return True
    else:
        return False

Re: อยากจะเช็ตค่า ทศนิยม ถ้าไม่เต็มจำนวน

โดย thatsawan » 26/12/2018 4:05 pm

mindphp เขียน:

โค้ด: เลือกทั้งหมด

var = 1.0
if var.is_integer():
    print 'ตัวเลขลงตัว'
else :
    print 'ตัวเลขไม่ลงตัว'
คำถามควรอยู่ในหมวดนี้นะ
viewforum.php?f=16
is_integer ใช้ไม่ได้ค่ะ
AttributeError: 'int' object has no attribute 'is_integer'

Re: อยากจะเช็ตค่า ทศนิยม ถ้าไม่เต็มจำนวน

โดย mindphp » 26/12/2018 3:55 pm

โค้ด: เลือกทั้งหมด

var = 1.0
if var.is_integer():
    print 'ตัวเลขลงตัว'
else :
    print 'ตัวเลขไม่ลงตัว'
คำถามควรอยู่ในหมวดนี้นะ
viewforum.php?f=16

อยากจะเช็ตค่า ทศนิยม ถ้าไม่เต็มจำนวน

โดย thatsawan » 26/12/2018 1:21 pm

กรณี ที่ตอ้งการ ถ้าเป็น 1.00 หรือ 2.00 ลงท้ายด้วย .00 จะให้ทำงานผ่านไปเลย

เเต่ถ้า 1.50 หรือ 2.23 จะเอามาดัก if

ข้างบน