Rất nhiều lần, trong khi thực hiện một số dự án hoặc có thể là lập trình đơn giản, chúng ta cần hạn chế xem một chuỗi Python đã cho có phải là số nguyên hay không. Vì vậy, trong bài viết chi tiết này, bạn sẽ biết về năm cách chính để kiểm tra xem một chuỗi python đã cho có phải là số nguyên hay không
Vì vậy, không lãng phí bất cứ lúc nào, hãy trực tiếp chuyển sang các cách để python kiểm tra xem chuỗi có phải là số nguyên không
nội dung
Một số cách ưu tú để Python Kiểm tra xem Chuỗi có phải là Số nguyên không
- hàm số
- xử lý ngoại lệ
- hàm isdigit
- Biểu hiện thông thường
- Hàm #1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 6 và #1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 7
1. Kiểm tra xem chuỗi đã cho hoặc chuỗi đầu vào có phải là số nguyên hay không bằng cách sử dụng hàm không số
Có thể dùng hàm isnumeric() của Python để kiểm tra xem một chuỗi có phải là số nguyên hay không. unnumeric() là một hàm dựng sẵn. Nó trả về True nếu tất cả các ký tự là số, nếu không thì False
Ghi chú. isnumeric không kiểm tra xem chuỗi có đại diện cho số nguyên hay không, nó kiểm tra xem tất cả các ký tự trong chuỗi có phải là ký tự số không. #1
s = '695444'
print(s.isnumeric())
#2
s = '\u00BD'
print(s.isnumeric())
#3
s='pythonpool65'
print(s.isnumeric())
#4
s = '5651'
if s.isnumeric():
print('Integer')
else:
print('Not an integer')
8 là unicode cho ½, không phải là số nguyên. Nhưng #1
s = '695444'
print(s.isnumeric())
#2
s = '\u00BD'
print(s.isnumeric())
#3
s='pythonpool65'
print(s.isnumeric())
#4
s = '5651'
if s.isnumeric():
print('Integer')
else:
print('Not an integer')
9 vẫn trả về giá trị True
Sử dụng phương pháp khác là bạn muốn tránh những trường hợp này
cú pháp
string.isnumeric()Thông số
Phương thức True True False Integer0 không nhận bất kỳ tham số nào
ví dụ
#1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer')
đầu ra
True True False IntegerGiải trình
Ở đây trong ví dụ trên, chúng tôi đã sử dụng hàm isnumeric() để kiểm tra xem chuỗi có phải là số nguyên trong python theo bốn cách khác nhau không
- Trong ví dụ đầu tiên, chúng ta đã khởi tạo và khai báo một chuỗi s với giá trị ‘69544’. Sau đó, với hàm isnumeric(), chúng ta kiểm tra xem ‘69544’ có phải là số nguyên hay không. Trong trường hợp này, nó là một số nguyên và nó trả về 'Đúng'. ’
- Trong ví dụ thứ 2 để python kiểm tra, nếu chuỗi là số nguyên, chúng ta đã khởi tạo chuỗi s với giá trị ‘\u00BD’. '\u00BD' này là một giá trị Unicode và bạn có thể viết các ký tự chữ số và số bằng Unicode trong chương trình. Vì vậy, nó trả về true
- Ví dụ thứ ba tương tự như ví dụ đầu tiên, nhưng thay vì khai báo giá trị của một số nguyên, chúng tôi đã kết hợp cả giá trị số nguyên và chuỗi. Trong trường hợp này, hàm innumeric() sẽ trả về giá trị Sai
- Trong ví dụ thứ tư, chúng ta đã thực hiện thêm một số bước, sử dụng if-else với sự kết hợp của hàm isnumeric(). Ở đây chúng tôi đã khai báo và khởi tạo biến 's' của mình với giá trị là '5651'. Sau đó, với sự trợ giúp của các câu lệnh điều khiển luồng và hàm isnumeric(), chúng tôi đã kiểm tra xem chuỗi đã cho có phải là số nguyên hay không. Trong trường hợp này, nó là một số nguyên. Vì vậy, chúng ta sẽ nhận được kết quả là Integer. Trong các trường hợp khác, nếu giá trị không phải là số nguyên, thì chúng ta sẽ nhận được kết quả cho biết 'Không phải là số nguyên. ’
Ghi chú. Phương pháp kiểm tra xem chuỗi có phải là số nguyên trong Python này không hoạt động với số âm
2. Python Kiểm tra xem chuỗi có phải là số nguyên không bằng cách sử dụng xử lý ngoại lệ
Chúng ta có thể sử dụng python kiểm tra xem chuỗi có phải là số nguyên hay không bằng cách sử dụng cơ chế xử lý ngoại lệ. Nếu bạn không biết cách xử lý ngoại lệ trong python, hãy để tôi giải thích ngắn gọn cho bạn. Trong Python, các ngoại lệ có thể được xử lý bằng cách sử dụng câu lệnh thử. Hoạt động quan trọng có thể đưa ra một loại trừ được đặt trong mệnh đề thử. Mã quản lý các ngoại lệ được viết trong mệnh đề ngoại trừ. Do đó, chúng tôi có thể chọn những thao tác sẽ thực hiện khi chúng tôi đã loại trừ
Hãy xem qua một ví dụ về cách nó hoạt động
cú pháp
________số 8_______Thông số
Cơ chế ____5_______1 (thử-trừ-cuối cùng) không nhận bất kỳ tham số nào
ví dụ
s = '951sd' isInt = True try: # converting to integer int(s) except ValueError: isInt = False if isInt: print('Input value is an integer') else: print('Not an integer')
đầu ra
Not an integerGiải trình
Trong ví dụ trên, chúng tôi đã khởi tạo một sting 's' với giá trị '951sd'. Ban đầu, chúng tôi tin rằng giá trị của chuỗi 's' là một số nguyên. Vì vậy, chúng tôi tuyên bố nó đúng. Sau đó, chúng tôi đã thử chuyển đổi chuỗi thành số nguyên bằng cách sử dụng hàm True
True
False
Integer2
Nếu chuỗi 's' chứa các ký tự không phải là số, thì 'int' sẽ đưa ra ValueError, lỗi này sẽ cho biết rằng chuỗi không phải là số nguyên và ngược lại
Ngoài ra, cùng với cơ chế xử lý ngoại lệ, chúng tôi đã sử dụng các câu lệnh điều khiển luồng để in đầu ra tương ứng
Ghi chú. Phương pháp kiểm tra xem chuỗi có phải là số nguyên trong Python này cũng sẽ hoạt động trên Số âm
3. Python Kiểm tra xem chuỗi có phải là số nguyên không bằng cách sử dụng hàm isdigit
Chúng ta có thể sử dụng hàm isdigit() để kiểm tra chuỗi có phải là số nguyên hay không trong Python. Phương thức isdigit() trả về True nếu tất cả các ký tự trong chuỗi đều là chữ số. Nếu không, nó trả về Sai
Hãy xem qua một ví dụ về cách nó hoạt động
cú pháp
string.isdigit()Thông số
Phương thức True True False Integer3 không nhận bất kỳ tham số nào
Giá trị trả về của hàm isdigit()
- Trả về True – Nếu tất cả các ký tự trong chuỗi là chữ số
- Trả về Sai – Nếu chuỗi chứa một hoặc nhiều ký tự không phải chữ số
ví dụ
str = input("Enter any value: ") if str.isdigit(): print("User input is an Integer ") else: print("User input is string ")
đầu ra
Enter any value :698 User input is IntegerGiải trình
Ví dụ thứ ba để kiểm tra xem chuỗi đầu vào có phải là số nguyên hay không là sử dụng hàm isdigit(). Ở đây trong ví dụ trên, chúng tôi đã lấy đầu vào từ chuỗi và lưu trữ nó trong biến 'str. ’ Sau đó, với sự trợ giúp của các câu lệnh điều khiển và hàm isdigit(), chúng ta đã xác minh chuỗi đầu vào có phải là số nguyên hay không
Ghi chú
Hàm True
True
False
Integer4‘ sẽ chỉ hoạt động với các số nguyên dương. tôi. e. , nếu bạn chuyển bất kỳ số float nào, nó sẽ báo đó là một chuỗi.
Nó không nhận bất kỳ đối số nào, do đó nó sẽ trả về lỗi nếu một tham số được truyền vào
4. Python Kiểm tra xem chuỗi có phải là số nguyên không bằng cách sử dụng biểu thức chính quy
Chúng ta có thể sử dụng mẫu tìm kiếm được gọi là biểu thức chính quy để kiểm tra xem một chuỗi có phải là số nguyên hay không trong Python. Nếu bạn không biết biểu thức chính quy là gì và nó hoạt động như thế nào trong python, hãy để tôi giải thích ngắn gọn cho bạn. Trong Python, một biểu thức chính quy là một chuỗi ký tự cụ thể giúp khớp hoặc tìm các chuỗi hoặc bộ chuỗi khác, với một cú pháp chuyên biệt được giữ theo một mẫu. Biểu thức chính quy được sử dụng rộng rãi trong thế giới UNIX
Ở đây chúng tôi đang sử dụng phương thức khớp của biểu thức chính quy i. e, lại. cuộc thi đấu()
Lại. match() chỉ tìm kiếm trong dòng đầu tiên của chuỗi và trả về đối tượng khớp nếu tìm thấy, nếu không thì không trả về. Nhưng nếu một chuỗi con khớp nằm ở một số dòng khác ngoài dòng đầu tiên của chuỗi (trong trường hợp chuỗi nhiều dòng), nó sẽ không trả về
Hãy xem qua một ví dụ về cách nó hoạt động
cú pháp
re.match(pattern, string, flags=0)Thông số
- mẫu
Nó chứa biểu thức chính quy sẽ được so khớp - chuỗi
Nó bao gồm chuỗi sẽ được tìm kiếm để khớp với mẫu ở đầu chuỗi - cờ (tùy chọn)
Bạn có thể chỉ định các cờ khác nhau bằng bitwise OR (. ). Đây là những sửa đổi
Giá trị trả về
- Trả lại các đối tượng khớp nếu tìm thấy
- Nếu không khớp, giá trị _______5_______5 sẽ được trả về, thay vì Đối tượng khớp
ví dụ
#1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 0
đầu ra
#1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 1Giải trình
Cách thứ tư để kiểm tra xem chuỗi đầu vào có phải là số nguyên hay không trong Python là sử dụng cơ chế Biểu thức chính quy. Ở đây trong ví dụ này, trước tiên chúng tôi đã nhập biểu thức chính quy bằng cách sử dụng 'nhập lại'. Sau đó, chúng tôi đã lấy đầu vào từ người dùng và lưu trữ nó ở giá trị biến. Sau đó, chúng tôi đã sử dụng phương pháp của chúng tôi lại. match() để kiểm tra xem chuỗi đầu vào có phải là số nguyên hay không. Mẫu được so khớp ở đây là “[-+]?\d+$”. Mẫu này chỉ ra rằng nó sẽ chỉ khớp nếu chúng ta có chuỗi đầu vào là một số nguyên
Ghi chú
Hàm True
True
False
Integer6‘ cũng sẽ hoạt động với các số âm
5. Python Kiểm tra xem chuỗi có phải là số nguyên hay không bằng cách sử dụng hàm #1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 6 và #1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 7
Chúng ta có thể sử dụng kết hợp hàm any() và map() để kiểm tra xem một chuỗi có phải là số nguyên hay không trong Python. Nếu bạn không biết hàm any() và map() là gì và cách chúng hoạt động trong python, hãy để tôi giải thích ngắn gọn cho bạn.
- Hàm any() có thể lặp lại (danh sách, chuỗi, từ điển, v.v. ) bằng Python. Hàm này trả về true nếu bất kỳ phần tử nào trong iterable là true, ngược lại nó trả về false.
- Hàm #1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 7 gọi hàm đã chỉ định cho từng mục của một lần lặp (chẳng hạn như chuỗi, danh sách, bộ hoặc từ điển) và trả về một danh sách kết quả
Hãy xem qua các ví dụ về cách chúng hoạt động
cú pháp
any() Cú pháp hàm
#1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 2map() Cú pháp hàm
#1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 3Thông số
any() Tham số chức năng
lặp đi lặp lại
Một đối tượng có thể lặp lại (danh sách, tuple, từ điển)
Các tham số của hàm map()
hàm số
Chức năng để thực hiện cho từng mục
lặp đi lặp lại
Một trình tự, bộ sưu tập hoặc một đối tượng lặp. Bạn có thể gửi bao nhiêu lần lặp tùy thích, chỉ cần đảm bảo hàm có một tham số cho mỗi lần lặp
Giá trị trả về
- Bất kỳ. Hàm any() trả về True nếu bất kỳ mục nào trong một lần lặp là đúng, nếu không, nó trả về Sai
- Bản đồ. Trả về danh sách kết quả sau khi áp dụng hàm đã cho
ví dụ
#1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 4
đầu ra
#1 s = '695444' print(s.isnumeric()) #2 s = '\u00BD' print(s.isnumeric()) #3 s='pythonpool65' print(s.isnumeric()) #4 s = '5651' if s.isnumeric(): print('Integer') else: print('Not an integer') 5Giải trình
Cách thứ năm để kiểm tra xem chuỗi đầu vào có phải là số nguyên hay không trong Python là sử dụng kết hợp hàm any() và map() trong python. Ở đây trong ví dụ trên, chúng tôi đã lấy đầu vào là một chuỗi 'sdsd'. Và sau đó với sự trợ giúp của hàm any(), map() và isdigit(), chúng ta có python kiểm tra xem chuỗi có phải là số nguyên không
Chúng tôi nhận được Sai vì chuỗi đầu vào là 'sdsd'
Ghi chú
Phương pháp này cũng sẽ hoạt động với các số âm
Các ứng dụng của Python Kiểm tra xem chuỗi có phải là số nguyên không
- Để kiểm tra xem một biến hoặc giá trị chuỗi đã cho chỉ chứa các số nguyên, chẳng hạn như xác thực nếu người dùng nhập đúng tùy chọn số trong ứng dụng dựa trên menu
- Sử dụng giá trị ascii của các ký tự, đếm và in tất cả các chữ số bằng hàm isdigit()
Phải đọc
- Giới thiệu về Python Super với các ví dụ
- Chức năng trợ giúp Python
- Tại sao Python sys. thoát tốt hơn các chức năng thoát khác?
- Chuỗi bit Python. Các lớp và các ví dụ khác. mô-đun
Phần kết luận. Python Kiểm tra xem chuỗi có phải là số nguyên không
Vì vậy, nếu bạn hoàn thành đến cùng, tôi khá chắc chắn rằng bây giờ bạn có thể hiểu tất cả các cách có thể để Kiểm tra xem một Chuỗi có phải là Số nguyên trong Python hay không. Cách tốt nhất có thể để kiểm tra xem chuỗi có phải là số nguyên trong Python hay không tùy thuộc vào nhu cầu của bạn và loại dự án bạn đang thực hiện. Tôi nghĩ bạn cũng có thể muốn biết Các cách trong Python để sắp xếp danh sách các danh sách. Nếu có, có một hướng dẫn tuyệt vời có sẵn trong thư viện hướng dẫn của chúng tôi, hãy xem thử
Vẫn còn bất kỳ nghi ngờ hoặc câu hỏi nào, hãy cho tôi biết trong phần bình luận bên dưới. Tôi sẽ cố gắng giúp bạn trong thời gian sớm nhất