Làm cách nào để kiểm tra xem giá trị có phải là số nguyên python không?
Qua Show
- Ngày 5 tháng 11 năm 20220 11867 Có cách nào để kiểm tra xem một chuỗi có đại diện cho một số nguyên không? . Bạn có thể dùng nhiều cách để kiểm tra chuỗi có phải là số nguyên hay không Cách kiểm tra xem một chuỗi có phải là số nguyên trong Python khôngĐể kiểm tra xem một chuỗi có phải là số nguyên trong Python hay không, hãy sử dụng phương thức isdigit(). Chuỗi isdigit() là một phương thức Python tích hợp để kiểm tra xem chuỗi đã cho chỉ bao gồm các chữ số Phương thức isdigit() kiểm tra xem các ký tự có trong chuỗi có phải là chữ số không. def checkInt(str): if str[0] in ('-', '+'): return str[1:].isdigit() return str.isdigit() print(checkInt("+21")) đầu raTrue Hãy hiểu mã này từng bước. Đầu tiên, chúng tôi đã xác định một chức năng tùy chỉnh chấp nhận một chuỗi mà chúng tôi muốn kiểm tra. Sử dụng điều kiện if, chúng ta kiểm tra ký tự đầu tiên của chuỗi thành – hoặc +. Nếu chuỗi bắt đầu bằng một trong các dấu đó, nó sẽ bỏ qua dấu đó và sau đó kiểm tra số nguyên bằng hàm isdigit() và dựa trên kết quả, nó sẽ trả về Đúng hoặc Sai Nếu chuỗi không bắt đầu bằng dấu + hoặc –, nó sẽ trực tiếp kiểm tra và trả về kết quả Nếu bạn chuyển một chuỗi biểu diễn giá trị float hoặc double, nó sẽ trả về Sai Sử dụng khối thử ngoại trừ với chức năng tùy chỉnhBạn cũng có thể tạo một hàm tùy chỉnh với khối try-ngoại trừ và hàm int(). int() là một phương thức tích hợp trả về một đối tượng số nguyên từ bất kỳ số hoặc chuỗi nào. Đầu tiên, hãy định nghĩa một hàm kiểm tra xem chuỗi có phải là số nguyên không def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21")) đầu raTrue Ở đây, bạn có thể thấy rằng “21” có thể dễ dàng chuyển đổi thành số nguyên. Đó là lý do tại sao nó trả về True. Mặt khác, nếu bạn chuyển số float dưới dạng một chuỗi, nó sẽ trả về Sai. def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21.0")) đầu raFalse Như bạn có thể thấy, nếu chúng ta chuyển giá trị float, nó sẽ trả về Sai Sử dụng biểu thức chính quyNếu bạn phải chấp nhận phân số thập phân trong chuỗi, bạn có thể viết biểu thức chính quy để kiểm tra giá trị số trong chuỗi. Để làm việc với các biểu thức chính quy trong Python, hãy nhập mô-đun re vào tệp của bạn. import re def check_int(str): return re.match(r"[-+]?\d+(\.0*)?$", str) is not None print(check_int("+21.0")) đầu raTrue Bạn có thể thấy rằng nó trả về True mặc dù chuyển biểu diễn thập phân của một chuỗi Đó là nó cho hướng dẫn này Bài viết trước Hàm isdigit() trong Python String Bài viết tiếp theo Mô tả công việc, vai trò và mức lương của Kỹ sư đám mây trong năm 2023 kranal https. //appdividend. com/ Krunal Lathiya là Kỹ sư phần mềm với hơn tám năm kinh nghiệm. Anh ấy đã phát triển một nền tảng vững chắc về các nguyên tắc khoa học máy tính và niềm đam mê giải quyết vấn đề. Ngoài ra, Krunal có kiến thức tuyệt vời về Khoa học dữ liệu và Học máy, đồng thời là chuyên gia về Ngôn ngữ Python. Krunal có kinh nghiệm với nhiều ngôn ngữ lập trình và công nghệ khác nhau, bao gồm PHP, R, Golang và JavaScript. Anh ấy cảm thấy thoải mái khi làm việc trong lĩnh vực phát triển front-end và back-end Sử dụng câu lệnh def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))5 để kiểm tra xem đầu vào của người dùng có phải là số nguyên không. Nếu giá trị đầu vào là một số nguyên, khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))6 sẽ hoàn thành việc chạy, nếu không, một def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))7 sẽ được nâng lên và khối này có thể được xử lý trong khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))8 Ví dụ đầu tiên sử dụng câu lệnh def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))5 để kiểm tra xem giá trị đầu vào có phải là số nguyên hợp lệ không Nếu chúng ta chuyển một giá trị không phải là số nguyên hợp lệ cho lớp True0, thì def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))7 sẽ xuất hiện ________số 8 Nếu người dùng đã nhập một số nguyên, khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))6 sẽ hoàn thành và khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))8 sẽ không chạy Nếu giá trị được cung cấp không phải là số nguyên hợp lệ, khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))8 sẽ chạy Ngoài ra, bạn có thể sử dụng phương pháp 3Kiểm tra xem đầu vào của người dùng có phải là Số nguyên hay không bằng cách sử dụng str. isdigit() #Sử dụng phương pháp 3 để kiểm tra xem đầu vào của người dùng có phải là số nguyên không. Phương thức 5 sẽ trả về 6 cho tất cả các giá trị nguyên dương và 7 cho tất cả các số không phải số, số dấu phẩy động hoặc số âm
các str. phương thức isdigit trả về 6 nếu tất cả các ký tự trong chuỗi là chữ số và có ít nhất 1 ký tự, nếu không thì trả về 7Lưu ý rằng phương thức 3 trả về 7 cho số nguyên âm và số dấu phẩy độngĐiều này là do số nguyên âm chứa dấu trừ và số dấu phẩy động chứa dấu chấm Bạn chỉ nên sử dụng phương pháp này để kiểm tra xem đầu vào của người dùng có phải là số nguyên dương hay không Bạn có thể sử dụng vòng lặp True92 nếu bạn cần tiếp tục nhắc người dùng cho đến khi họ nhập một số nguyên hợp lệ Tiếp tục yêu cầu người dùng nhập cho đến khi một Số nguyên được nhập #Ví dụ sau sử dụng vòng lặp True93 để tiếp tục lặp cho đến khi người dùng nhập một số nguyên hợp lệ True9 Nếu mã trong khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))6 tạo ra một def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))7, thì khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))8 sẽ chạy, nơi chúng tôi sử dụng câu lệnh True97 để tiếp tục bước lặp tiếp theo Nếu người dùng nhập một số nguyên hợp lệ, khối def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))6 sẽ hoàn thành thành công và sau đó khối True99 sẽ chạy khi chúng tôi sử dụng câu lệnh def checkInt(str): try: int(str) return True except ValueError: return False print(checkInt("+21"))50 để thoát khỏi vòng lặp True92 |