3 viết hàm kiểm tra một giá trị x có phải la số hay không python

Hướng dẫn kiểm tra chuỗi có phải là số hay không trong python. Bạn sẽ học được cách kiểm tra chuỗi có phải là số hay không trong python bằng các phương thức có sẵn như isdecimal, isdigit, isnumeric trong bài viết này.

Python đã tích hợp sẵn một số phương thức giúp bạn kiểm tra chuỗi có phải là số hay không như sau:

Kiểm tra xem tất cả ký tự trong chuỗi là số thập phân hay không [phương thức isdecimal ]

Chúng ta sử dụng phương thức isdecimal để kiểm tra xem tất cả ký tự trong chuỗi là số thập phân hay không với cú pháp sau đây:

str.isdecimal[]

nếu như tất cả ký tự trong chuỗi là số thập phân, thì kết quả True sẽ được trả về.

Cách sử dụng thực tiễn giống như ví dụ sau:

print["75120".isdecimal[]]


print["75F2".isdecimal[]]

Bạn cũng có thể sử dụng phương thức isdecimal với cả các ký tự 2 byte như tiếng Nhật zenkaku:

print["0982".isdecimal[]]


print["75a0".isdecimal[]]

nếu trong chuỗi ký tự có chứa dấu phẩy ,, dấu chấm . hay dấu gạch ngang -, kết quả trả về sẽ là False.

print["-8052".isdecimal[]]


print["3.14".isdecimal[]]


print["7,524".isdecimal[]]

nếu chuỗi ký tự là một ký tự trống, kết quả False cũng sẽ được trả về:

print["".isdecimal[]]

Kiểm tra xem tất cả ký tự trong chuỗi là chữ số hay không [phương thức isdigit]

Chúng ta sử dụng phương thức isdigit để kiểm tra xem tất cả ký tự trong chuỗi là chữ số hay không với cú pháp sau đây:

str.isdigit[]

nếu như tất cả ký tự trong chuỗi là chữ số , thì kết quả True sẽ được trả về. nếu như dù chỉ có một ký tự không phải là chữ số, thì False sẽ được trả về.

Cách sử dụng thực tiễn giống như ví dụ sau:

print["85120".isdigit[]]


print["75F2".isdigit[]]

nếu trong chuỗi ký tự có chứa dấu phẩy ,, dấu chấm . hay dấu gạch ngang -, kết quả trả về sẽ là False.

print["-8052".isdigit[]]


print["3.14".isdigit[]]


print["7,524".isdigit[]]

Bạn cũng có thể sử dụng phương thức isdigit với cả các ký tự chữ số 2 byte như tiếng Nhật zenkaku:

print["0982".isdigit[]]


print["75a0".isdigit[]]

nếu chuỗi ký tự là một ký tự trống, kết quả False sẽ được trả về:

print["".isdigit[]]

Lưu ý, theo như website chính thức của python thì chữ số được định nghĩa là ký tự ở dạng Numeric_Type=Digit hoặc Numeric_Type=Decimal, do đó cần chú ý là ký tự được coi là chữ số trong phương thức isdigit sẽ rộng hơn và bao gồm cả số trong phương thức isdecimal.

Do đó, bạn cũng có thể sử dụng phương thức isdigit với các ký tự chữ số trong nhóm Numeric_Type=Digit như là ①,②,③, trong khi phương thức isdecimal không làm được điều này.

print["⑤⑥⑦".isdecimal[]]


print["⑤⑥⑦".isdigit[]]

Kiểm tra xem tất cả ký tự trong chuỗi là số hay không [phương thức isnumeric ]

Chúng ta sử dụng phương thức isnumeric để kiểm tra xem tất cả ký tự trong chuỗi là số hay không với cú pháp sau đây:

str.isnumeric[]

nếu như tất cả ký tự trong chuỗi là số, thì kết quả True sẽ được trả về.

Cách sử dụng thực tiễn giống như ví dụ sau:

print["9852".isnumeric[]]


print["87E2".isnumeric[]]

nếu trong chuỗi ký tự có chứa dấu phẩy ,, dấu chấm . hay dấu gạch ngang -, cũng giống như hai phương thức ở trên thì phương thức isnumeric cũng trả kết quả là False.

print["-8052".isnumeric[]]


print["3.14".isnumeric[]]


print["7,524".isnumeric[]]

Bạn cũng có thể sử dụng phương thức isnumeric với cả các ký tự 2 byte như tiếng Nhật zenkaku:

print["0982".isnumeric[]]


print["75a0".isnumeric[]]

nếu chuỗi ký tự là một ký tự trống, kết quả False cũng sẽ được trả về:

print["".isnumeric[]]

Lưu ý, theo như website chính thức của python thì số được định nghĩa là ký tự ở dạng Numeric_Type=Digit hoặc Numeric_Type=Decimal hoặc Numeric_Type=Numeric, do đó cần chú ý là ký tự được coi là chữ số trong phương thức isnumeric sẽ rộng hơn và bao gồm cả số thập phân lẫn chữ số trong phương thức isdigit lẫn phương thức isdecimal.

Có nghĩa là, phương thức isnumeric cũng có thể sử dụng với các ký tự chữ số trong nhóm Numeric_Type=Digit như là ①,②,③ tương tự như phương thức isdigit.

print["⑤⑥⑦".isnumeric[]]


print["⑤⑥⑦".isdigit[]]

Ngoài ra, bạn cũng có thể sử dụng phương thức isnumeric với các ký tự chữ số trong nhóm Numeric_Type=Numeric như là số được biểu diễn bởi hán tự trong tiếng Nhật hoặc tiếng Trung, trong khi phương thức isdigit không làm được điều này.


print["七五三".isdigit[]]


print["七五三".isnumeric[]]



print["拾伍".isdigit[]]


print["拾伍".isnumeric[]]

Sự khác biệt giữa str.isdigit, isnumeric và isdecimal trong python

Qua những phân tích ở trên, bạn đã thấy được sự khác biệt giữa ba phương thức này chưa nào? Hãy cùng tổng hợp lại chúng ở dưới đây nhé.
Trước hết về quan hệ khả năng xử lý dạng dữ liệu giữa ba phương thức này sẽ như sau:

Bài viết liên quan

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME>> python cơ bản - lập trình python cho người mới bắt đầu>>09. chuỗi trong python

Bài sau
Chuyển số thành chuỗi trong python
Bài tiếp
Kiểm tra chuỗi có phải là chữ hay không trong python
  • Bài viết mới nhất
  • Tách chuỗi trong PHP [explode, preg_split] tháng 9 17, 2022
  • Cắt chuỗi trong PHP [substr, mb_substr] tháng 9 17, 2022
  • Tách chuỗi thành mảng trong PHP [explode] tháng 9 17, 2022
  • Tìm kiếm chuỗi trong PHP [strpos] tháng 9 17, 2022
  • Đếm số lần xuất hiện của ký tự và chuỗi trong chuỗi PHP [substr_count] tháng 9 17, 2022
  • Chuyển chuỗi thành mảng trong PHP [str_split, mb_str_split] tháng 9 17, 2022
  • Tách từng ký tự trong chuỗi PHP [substr, preg_split] tháng 9 17, 2022
  • Xóa ký tự trong chuỗi PHP tháng 9 15, 2022
Profile

Tác giả : Kiyoshi [Chis Thanh]

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.

Chủ Đề