Computer >> Máy Tính >  >> Lập trình >> Python

Đếm tất cả các tiền tố trong chuỗi đã cho với tần suất lớn nhất bằng Python

Trong hướng dẫn này, chúng ta sẽ viết một chương trình đếm và in các từ có tần suất bảng chữ cái cao hơn bảng chữ cái thứ hai.

Lấy một chuỗi và hai bảng chữ cái. Các tiền tố có tần suất cao hơn của bảng chữ cái đầu tiên sẽ được in. Và hiển thị số lượng ở cuối đầu ra.

Hãy xem một số ví dụ.

Đầu vào

string:- apple
alphabets:- p, e

Đầu ra

ap
app
appl
apple 4

Đầu vào

string:- apple
alphabets:- e, p

Đầu ra

0

Hãy xem các bước để viết mã.

  • Xác định một chức năng và viết mã vào đó.

  • Khởi tạo số đếm thành 0 và một chuỗi trống.

  • Lặp lại chuỗi.

  • Lấy tiền tố bằng cách sử dụng phương pháp cắt chuỗi và lập chỉ mục. Và lưu trữ nó trong một chuỗi trống.

  • So sánh tần suất bảng chữ cái trong tiền tố.

  • In và tăng số lượng nếu hài lòng.

  • In số lượng ở cuối.

Ví dụ

# defining a function for multiple calles
def prefixes(string, _1, _2):
   # count count = 0
   # empty string for comparison
   prefix = ""
   # iterating over the string
   for i in range(len(string)):
      # getting the prefix from the string
      prefix = string[:i + 1]
      # comparing the count of alphabets in the prefix
      if prefix.count(_1) > prefix.count(_2):
      # printing the prefix if success
      print(prefix)
      # incrementing the count by 1
      count += 1
   # printing the count
   print(f"Total prefixes matched: {count}")
if __name__ == '__main__':
   # invokging the function
   print(f"----------------apple p e---------------------")
   prefixes('apple', 'p', 'e')
   print()
   print(f"----------------apple e p---------------------")
   prefixes('apple', 'e', 'p')

Đầu ra

Nếu bạn chạy đoạn mã trên, bạn sẽ nhận được kết quả sau.

----------------apple p e---------------------
ap
app
appl
apple
Total prefixes matched: 4
----------------apple e p---------------------
Total prefixes matched: 0

Kết luận

Nếu bạn đang gặp bất kỳ vấn đề nào trong việc hiểu mã, hãy đề cập đến chúng trong phần bình luận.