Đếm các ký tự trùng lặp trong một chuỗi python
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 Show Đếm số lần xuất hiện của một ký tự đã cho trong Chuỗi trong Pythonstring = '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
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 Hôm nay chúng ta sẽ viết một hàm python có tên là duplicate_count("abcdeaa") //output: 1 1 sẽ chấp nhận một chuỗi, duplicate_count("abcdeaa") //output: 1 2, làm đối sốBạn được cung cấp một chuỗi. Mục tiêu của hàm là trả về số ký tự phân biệt chữ hoa chữ thường (số hoặc ký tự chữ cái) xuất hiện nhiều lần trong một chuỗi Đây là một ví dụ duplicate_count("abcdeaa") //output: 1 Đối với ví dụ đầu tiên, chỉ có ký tự duplicate_count("abcdeaa") //output: 1 3 được tìm thấy nhiều lần nên hàm sẽ trả về duplicate_count("abcdeaa") //output: 1 4. Mặc dù có ba ký tự duplicate_count("abcdeaa") //output: 1 3 trong chuỗi, nhưng mục tiêu của hàm không phải là đếm số ký tự lặp lại mà là đếm số ký tự trùng lặpTrong ví dụ thứ hai, cả duplicate_count("abcdeaa") //output: 1 3 và lowerText = text.lower() 1 (nhớ viết thường không quan trọng) là những ký tự duy nhất có ký tự trùng lặpVí dụ thứ ba, cả chữ cái lowerText = text.lower() 2 và lowerText = text.lower() 3 đều xuất hiện nhiều lần, hàm trả về lowerText = text.lower() 4Để bắt đầu hàm, vì các ký tự chữ thường và chữ hoa sẽ được xem xét theo cùng một cách, chúng tôi sẽ làm cho mọi thứ dễ dàng hơn bằng cách viết thường đầu vào chuỗi của chúng tôi Chúng tôi gán chuỗi chữ thường cho một biến có tên là lowerText = text.lower() 5lowerText = text.lower() Tiếp theo, chúng ta sẽ tạo một biến tên là lowerText = text.lower() 6 và gán cho nó một mảng trống. Chúng tôi sẽ sử dụng mảng này để giữ tất cả các ký tự trùng lặpP -> 2 y -> 1 t -> 1 h -> 1 o -> 2 n -> 2 -> 1 r -> 2 g -> 2 a -> 1 m -> 2 i -> 10 Điều này là do khi chúng ta lặp qua tất cả các ký tự trong đầu vào chuỗi của mình, bằng cách sử dụng phương thức lowerText = text.lower() 7, chúng ta có thể kiểm tra xem ký tự lặp hiện tại có trùng lặp trong chuỗi không. Miễn là chúng tôi chưa thêm ký tự đó vào mảng lowerText = text.lower() 6 của mình, chúng tôi có thể thêm ký tự đó vàoP -> 2 y -> 1 t -> 1 h -> 1 o -> 2 n -> 2 -> 1 r -> 2 g -> 2 a -> 1 m -> 2 i -> 13 Sau khi chúng tôi hoàn thành việc lặp qua chuỗi, mảng lowerText = text.lower() 6 của chúng tôi hiện có tất cả các ký tự riêng biệt có các ký tự trùng lặp. Chúng ta có thể trả về số ký tự bằng cách trả về độ dài của mảng đóP -> 2 y -> 1 t -> 1 h -> 1 o -> 2 n -> 2 -> 1 r -> 2 g -> 2 a -> 1 m -> 2 i -> 15 Đây là phần còn lại của chức năng Đây là bài viết thuật toán python đầu tiên nhưng sẽ có nhiều hơn nữa trong tương lai. Trong thời gian chờ đợi, nếu bạn đang muốn học JavaScript tiếp theo, hãy xem các bài viết về giải pháp thuật toán JavaScript của tôi 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ỗiCâ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ó P -> 2 y -> 1 t -> 1 h -> 1 o -> 2 n -> 2 -> 1 r -> 2 g -> 2 a -> 1 m -> 2 i -> 16 Đâ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 duplicate_count("abcdeaa") //output: 1 7 để đếm và in số lượng ký tự lặp lại có sẵn trong chuỗi đã choLư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 P -> 2 y -> 1 t -> 1 h -> 1 o -> 2 n -> 2 -> 1 r -> 2 g -> 2 a -> 1 m -> 2 i -> 17 với tuyên bố được đưa ra dưới đây P -> 2 y -> 1 t -> 1 h -> 1 o -> 2 n -> 2 -> 1 r -> 2 g -> 2 a -> 1 m -> 2 i -> 18 Và sau đó khối mã đưa ra dưới đây P -> 2 y -> 1 t -> 1 h -> 1 o -> 2 n -> 2 -> 1 r -> 2 g -> 2 a -> 1 m -> 2 i -> 19 với tuyên bố sau duplicate_count("abcdeaa") //output: 1 0Sau 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 Làm cách nào để tìm số ký tự trùng lặp trong chuỗi trong Python?Trăn . string = "Trách nhiệm cao cả"; print("Sao chép các ký tự trong một chuỗi đã cho. "); #Đếm từng ký tự có trong chuỗi cho tôi trong phạm vi (0, len (chuỗi)) đếm = 1; cho j trong phạm vi(i+1, len(chuỗi)) nếu (chuỗi [i] == chuỗi [j] và chuỗi [i]. = '') đếm = đếm + 1; Làm cách nào để đếm số lần xuất hiện của tất cả các ký tự trong một chuỗi bằng Python?count() Một trong những cách có sẵn mà bạn có thể sử dụng Python để đếm số lần xuất hiện trong một chuỗi là sử dụng chuỗi có sẵn. phương thức đếm(). Phương thức nhận một đối số, một ký tự hoặc một chuỗi con và trả về số lần ký tự đó tồn tại trong chuỗi được liên kết với phương thức. |