Đếm các ký tự lặp lại trong một chuỗi python

Các ký tự lặp lại trong một chuỗi được gọi là các ký tự trùng lặp. Khi chúng tôi đề cập đến việc in các ký tự trùng lặp trong một chuỗi, chúng tôi muốn nói rằng chúng tôi sẽ in mọi ký tự, kể cả khoảng trắng, xuất hiện nhiều lần trong chuỗi được đề cập

Kịch bản đầu vào-đầu ra

Sau đây là kịch bản đầu vào-đầu ra để tìm tất cả các ký tự trùng lặp trong một chuỗi -

Input: TutorialsPoint
Output: t, o, i

Như chúng ta có thể thấy, các ký tự trùng lặp trong chuỗi đã cho “TutorialsPoint” là “t” với “3” lần lặp lại, “o” với “2” lần lặp lại và “i” với “2” danh tiếng

thuật toán

Thuật toán sau sẽ tìm kiếm một chuỗi ký tự trùng lặp -

  • Tạo một chuỗi và lưu trữ nó trong một biến

  • Để tìm các ký tự trùng lặp, hãy sử dụng hai vòng lặp. Một ký tự sẽ được chọn và số lượng biến sẽ được đặt thành 1 bằng cách sử dụng vòng lặp bên ngoài

  • Để so sánh ký tự đã chọn với các ký tự còn lại trong chuỗi, một vòng lặp bên trong sẽ được sử dụng

  • Nếu một trận đấu được tìm thấy, số lượng được tăng lên 1

  • Nếu số ký tự nhiều hơn 1 sau khi vòng lặp bên trong kết thúc, thì có các ký tự trùng lặp trong chuỗi

  • In số ký tự và tất cả các ký tự lặp lại

  • Chấm dứt

Chúng ta có thể triển khai thuật toán trên theo nhiều cách khác nhau, hãy để chúng ta xem từng thuật toán một -

Sử dụng vòng lặp

Để lặp lại nhiều lần thông qua một chuỗi, hãy sử dụng vòng lặp for. Chức năng này giống như một phương thức lặp được thấy trong các ngôn ngữ lập trình hướng đối tượng khác và ít giống với từ khóa for được tìm thấy trong các ngôn ngữ lập trình khác

Thí dụ

Sau đây là một ví dụ để tìm tất cả các ký tự trùng lặp trong một chuỗi bằng vòng lặp -

đầu ra

Sau đây là đầu ra của đoạn mã trên -

All the duplicate characters in the string are: 
e  -  2
l  -  3
o  -  4
m  -  2
t  -  3
o  -  3
t  -  2
o  -  2
i  -  3
a  -  2
l  -  2
i  -  2

Sử dụng danh sách bằng phương thức đếm []

Tần suất của một ký tự hoặc chuỗi con trong một chuỗi có thể được tính bằng cách sử dụng hàm đếm[] của ngôn ngữ Python. Là một giá trị trả về, nó chỉ cung cấp số lần xuất hiện

Ví dụ2

Sau đây là một ví dụ để tìm tất cả các ký tự trùng lặp trong một chuỗi bằng cách sử dụng phương thức count[] -

đầu ra

Sau đây là đầu ra của đoạn mã trên -

t o i

Sử dụng phương thức Counter[]

Lớp con dict của Python được tạo riêng để đếm các đối tượng có thể băm. Đó là một cuốn từ điển trong đó các con số là giá trị và đối tượng là chìa khóa. Bạn thường chuyển một chuỗi hoặc có thể lặp lại các đối tượng có thể băm làm đầu vào cho hàm tạo của lớp khi sử dụng Bộ đếm

Thí dụ

Sử dụng phương thức Counter, tạo một từ điển với các chuỗi làm khóa và tần số làm giá trị. Sau đó, tạo một biến tạm thời và in mọi chỉ mục bắt nguồn từ các khóa có giá trị lớn hơn 1 như trong ví dụ sau:

Trong hướng dẫn này, chúng ta sẽ học cách đếm số lần xuất hiện của một ký tự đã cho trong một chuỗi bằng Python. Chúng tôi sẽ sử dụng từ điển python và cố gắng giải quyết một số vấn đề dựa trên chuỗi. Ta sẽ tìm các ký tự riêng biệt, ký tự rời rạc, ký tự duy nhất của chuỗi và đồng thời đếm số từ có trong chuỗi

Đếm số lần xuất hiện của một ký tự đã cho trong Chuỗi trong Python

string = 'Python Programming'
dictionary = {}
for char in string:
    if[ char in dictionary.keys[]]:
        dictionary[char] += 1
    else:
        dictionary[char]=1
for char in dictionary:
    print[char,' -> ',dictionary[char]]

đầu ra

P -> 2
y -> 1
t -> 1
h -> 1
o -> 2
n -> 2
  -> 1
r -> 2
g -> 2
a -> 1
m -> 2
i -> 1
  • Hãy xem xét một chuỗi [ví dụ. 'Lập trình Python'] và tạo một từ điển trống
  • Sử dụng các ký tự trong chuỗi làm khóa và số lượng của chúng làm giá trị
  • Đối với mọi ký tự trong chuỗi, nếu một ký tự có trong từ điển dưới dạng khóa, hãy tăng giá trị tương ứng của nó. Khác thêm ký tự mới vào từ điển làm khóa và gán giá trị đếm của nó là một

Vì vậy, bây giờ, chúng tôi đã tạo một từ điển python chứa thông tin về chuỗi. Hãy xem những gì chúng ta có thể làm bằng cách sử dụng thông tin này

Bài viết này được tạo ra để đề cập đến chương trình trong Python, đếm và in tổng số ký tự lặp lại có sẵn trong một chuỗi nhất định do người dùng nhập vào thời gian chạy

Đếm tổng số ký tự lặp lại trong một chuỗi

Câu hỏi đặt ra là hãy viết chương trình Python để đếm tổng số ký tự lặp lại có sẵn trong một chuỗi do người dùng nhập vào. Đây là câu trả lời của nó

rChar = 0
rCharList = []
k = 0

print["Enter the String: "]
text = str[input[]]

textList = list[text]
tot = len[text]

for i in range[tot]:
  if text[i] in textList:
    if text[i] not in rCharList:
      newText = text[i+1:]
      newTot = len[newText]
      for j in range[newTot]:
        if newText[j]==text[i]:
          rChar = rChar+1
          rCharList.insert[k, text[i]]
          k = k+1
          break

print["\nTotal Repeated Character[s]: "]
print[rChar]

Đây là mẫu chạy của nó

Bây giờ cung cấp đầu vào nói Codecracker. com dưới dạng chuỗi và nhấn phím

All the duplicate characters in the string are: 
e  -  2
l  -  3
o  -  4
m  -  2
t  -  3
o  -  3
t  -  2
o  -  2
i  -  3
a  -  2
l  -  2
i  -  2
0 để đếm và in số ký tự lặp lại có sẵn trong chuỗi đã cho

Lưu ý - Trong trình giải mã chuỗi. com, các ký tự lặp lại là c, o, e, r

Để định dạng giao diện đầu ra của chương trình trước đó theo cách tốt hơn, hãy thay đổi đoạn mã sau

print["Enter the String: "]

với tuyên bố được đưa ra dưới đây

print[end="Enter the String: "]

Và sau đó khối mã đưa ra dưới đây

________số 8

với tuyên bố sau

print["\nTotal Repeated Character[s]: " + str[rChar]]

Sau khi thay đổi hai mã hoặc khối mã này, đây là giao diện đầu ra mới của lần chạy mẫu với trình giải mã đầu vào của người dùng lần này

Chủ Đề