Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ฉันจะตรวจสอบว่าอินพุตดิบเป็นจำนวนเต็มใน Python 3 ได้อย่างไร


มีเมธอดที่เรียกว่า isdigit() ในคลาส String ที่คืนค่า จริง หากอักขระทั้งหมดในสตริงเป็นตัวเลข และมีอักขระอย่างน้อยหนึ่งตัว มิฉะนั้น เท็จ แม้ว่าคุณจะป้อนทศนิยม มันก็จะกลับเป็นเท็จ เรียกได้ดังนี้:

>>> x = raw_input()
12345
>>> x.isdigit()
True

คุณยังสามารถใช้ regexes เพื่อผลลัพธ์เดียวกันได้ สำหรับการจับคู่ตัวเลขเท่านั้น เราสามารถเรียก re.match(regex, string) โดยใช้ regex:"^[0-9]+$" ตัวอย่างเช่น

>>> x = raw_input()
123abc
>>> bool(re.match('^[0-9]+$', x))
False

re.match ส่งคืนอ็อบเจ็กต์ เพื่อตรวจสอบว่ามีอยู่หรือไม่ เราต้องแปลงเป็นบูลีนโดยใช้ bool()