Tìm số chữ số trong chuỗi Python

Đối số mà hàm nhận có thể là một chuỗi [một chuỗi, bộ dữ liệu, danh sách, phạm vi hoặc byte] hoặc một bộ sưu tập [từ điển, tập hợp hoặc tập hợp cố định]

Đây là lý do tại sao chúng tôi phải chuyển đổi số nguyên thành chuỗi - chúng tôi không thể chuyển số nguyên cho hàm len[] vì số nguyên không phải là một chuỗi hoặc một tập hợp

Nếu bạn cần xử lý tình huống trong đó số âm, hãy trừ đi 7 từ kết quả

Chúng tôi kiểm tra xem số đó có nhỏ hơn 0 hay không và nếu có, chúng tôi trừ đi 1 từ độ dài của nó để tính dấu trừ

string.isdigit[]
0

Nếu ứng dụng của bạn coi số 0 có độ dài là 0, hãy thêm câu lệnh len[]1 để kiểm tra xem có phải là 0 không

Câu lệnh len[]3 kiểm tra xem số có nhỏ hơn 0 không và nếu có, chúng tôi trừ đi 1

Câu lệnh len[]1 kiểm tra xem số đó có bằng với 0 hay không, và nếu bằng thì chúng ta gán 0 cho biến len[]9

Nếu câu lệnh

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
20 chạy, số nguyên là số dương, vì vậy chúng ta có thể chuyển đổi nó thành chuỗi và truyền chuỗi cho hàm len[]

Bạn cũng có thể sử dụng một chuỗi ký tự được định dạng để lấy độ dài của một số nguyên

Chuỗi ký tự được định dạng [chuỗi f] cho phép chúng tôi bao gồm các biểu thức bên trong chuỗi bằng cách thêm tiền tố vào chuỗi bằng

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
22

Biểu thức trình tạo được sử dụng để thực hiện một số thao tác cho mọi phần tử hoặc chọn một tập hợp con các phần tử đáp ứng một điều kiện

Trên mỗi lần lặp, chúng ta sử dụng phương thức

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
5 để kiểm tra xem ký tự hiện tại có phải là chữ số hay không và trả về kết quả

các str. phương thức isdigit trả về

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
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ề
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
7

Bước cuối cùng là sử dụng hàm

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
8 để lấy số chữ số trong chuỗi

Giá trị boolean của

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
6 được chuyển đổi thành giá trị 1 và giá trị
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
7 được chuyển đổi thành
True
False
20, vì vậy hàm
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
8 trả về tổng số chữ số trong chuỗi

Chúng tôi đã sử dụng phương pháp tương tự để đếm số lượng chữ cái trong chuỗi

các str. Phương thức isalpha[] trả về

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
6 nếu tất cả các ký tự trong chuỗi là chữ cái và có ít nhất một ký tự, nếu không thì trả về
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
7

Phương thức

True
False
24 coi các ký tự chữ cái được định nghĩa trong cơ sở dữ liệu ký tự Unicode là "Chữ cái"

Bạn có thể sử dụng phương pháp tương tự nếu bạn cần đếm số khoảng trắng có trong một chuỗi

các str. phương thức isspace trả về

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
6 nếu chỉ có các ký tự khoảng trắng trong chuỗi và có ít nhất một ký tự, nếu không thì trả về
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
7

Ngoài ra, bạn có thể sử dụng phương pháp

True
False
27

Đếm số chữ số và chữ cái trong Chuỗi bằng Python #

Để đếm số chữ số và chữ cái trong một chuỗi

  1. Sử dụng phương thức
    True
    False
    27 để xóa tất cả các chữ số không phải là chữ số khỏi chuỗi
  2. Sử dụng hàm
    True
    False
    29 để lấy số chữ số
  3. Lặp lại các bước tương tự để lấy số lượng chữ cái trong chuỗi

Chúng tôi đã sử dụng phương pháp

True
False
27 để xóa tất cả các chữ số không phải là chữ số khỏi chuỗi và sử dụng hàm
True
False
29 để đếm các chữ số

Ở đó. phương thức phụ trả về một chuỗi mới thu được bằng cách thay thế các lần xuất hiện của mẫu bằng thay thế được cung cấp

Chúng tôi đã sử dụng thay thế một chuỗi trống để xóa tất cả các ký tự không phải chữ số và ký tự

Dấu ngoặc vuông

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
82 được sử dụng để biểu thị một bộ ký tự

Dấu mũ

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
83 ở đầu tập hợp có nghĩa là "KHÔNG"

Ký tự

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
84 khớp với các chữ số
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
85 [và nhiều ký tự chữ số khác]

Các ký tự

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
86 và
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
87 đại diện cho phạm vi chữ thường và chữ hoa

Ký tự

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
88 khớp với các ký tự khoảng trắng unicode như
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
89

Trong thực tế, chúng tôi đếm số chữ số và chữ cái trong chuỗi bằng cách loại bỏ tất cả các ký tự không phải chữ số và không phải chữ cái và lấy độ dài của chuỗi

Nếu bạn cần trợ giúp đọc hoặc viết một biểu thức chính quy, hãy tham khảo tiêu đề phụ cú pháp biểu thức chính quy trong tài liệu chính thức

Phương thức

string.isdigit[]
2 trả về
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
6 nếu tất cả các ký tự trong chuỗi là chữ số. Nếu không, nó trả về
s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
7

Ví dụ

str1 = '342'


str2 = 'python'


# Output: True
#         False

Cú pháp của String isdigit[]

Cú pháp của

string.isdigit[]
2 là

string.isdigit[]

tham số isdigit[]

string.isdigit[]
2 không nhận bất kỳ tham số nào

Giá trị trả về từ isdigit[]

string.isdigit[]
2 trả về

  • Đúng nếu tất cả các ký tự trong chuỗi là chữ số
  • Sai nếu ít nhất một ký tự không phải là chữ số

ví dụ 1. Hoạt động của isdigit[]

s = "28212"


# contains alphabets and spaces
s = "Mo3 nicaG el l22er"

đầu ra

True
False

Một chữ số là một ký tự có giá trị thuộc tính

  • string.isdigit[]
    2
  • string.isdigit[]
    3

Trong Python, chỉ số trên và chỉ số dưới [thường được viết bằng unicode] cũng được coi là ký tự chữ số. Do đó, nếu chuỗi chứa các ký tự này cùng với các ký tự thập phân, thì

string.isdigit[]
2 trả về True

Chữ số la mã, tử số tiền tệ và phân số [thường được viết bằng unicode] được coi là ký tự số chứ không phải chữ số.

string.isdigit[]
2 trả về Sai nếu chuỗi chứa các ký tự này

Chủ Đề