Làm cách nào để kiểm tra xem một ký tự có được lặp lại trong chuỗi python không?

Thật dễ dàng trong Python để tìm ký tự lặp lại trong một chuỗi đã cho. Có nhiều cách để làm điều đó như sử dụng bảng chữ cái, vòng lặp for hoặc bộ sưu tập

Chương trình Python để tìm ký tự lặp lại trong một chuỗi đã cho Ví dụ

Mã ví dụ đơn giản

Cách cơ bản quét chuỗi 26 lần

chars = "abcdefghijklmnopqrstuvwxyz"
check_string = "Write a Python program to find the repeated character in a given string"
l_string = check_string.lower[]

for char in chars:
    count = l_string.count[char]
    print[char, count, end=', ']

đầu ra

Một cách khác là chỉ đi qua chuỗi một lần

Khoảng trắng cũng sẽ được tính trong phương thức này, vì vậy hãy áp dụng điều kiện if để xóa khoảng trắng trong số đếm


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]

Sử dụng bộ sưu tập

Cần nhập mô-đun bộ sưu tập

import collections

check_string = "Write a Python program to find the repeated character in a given string"
d = collections.defaultdict[int]
for c in check_string:
    d[c] += 1

print[d]

Hãy bình luận nếu bạn có bất kỳ nghi ngờ và đề xuất nào về chương trình Python char này

Ghi chú. IDE. PyCharm 2021. 3. 3 [Phiên bản cộng đồng]

cửa sổ 10

Trăn 3. 10. 1

Tất cả các Ví dụ về Python đều nằm trong Python 3, vì vậy có thể nó khác với python 2 hoặc các phiên bản nâng cấp

Rohit

Bằng cấp về Khoa học Máy tính và Kỹ sư. Nhà phát triển ứng dụng và có kinh nghiệm về nhiều ngôn ngữ lập trình. Đam mê công nghệ & thích học hỏi kỹ thuật

Giải pháp khái quát hóa cho bất kỳ chuỗi nào [không chỉ một chuỗi] và bất kỳ tập hợp nào [bất kỳ đối tượng nào có thể kiểm tra tư cách thành viên bằng toán tử

[c in str for c in set]
0, không chỉ một trong các ký tự]

def containsAny[str, set]:
    """ Check whether sequence str contains ANY of the items in set. """
    return 1 in [c in str for c in set]

def containsAll[str, set]:
    """ Check whether sequence str contains ALL of the items in set. """
    return 0 not in [c in str for c in set]

Mặc dù các phương thức chuỗi

[c in str for c in set]
1 và
[c in str for c in set]
2 có thể kiểm tra sự xuất hiện của chuỗi con, nhưng không có chức năng làm sẵn nào để kiểm tra sự xuất hiện trong một chuỗi gồm một tập hợp các ký tự

Trong khi làm việc với một điều kiện để kiểm tra xem một chuỗi có chứa các ký tự đặc biệt được sử dụng trong hàm thư viện chuẩn

[c in str for c in set]
3 hay không, tôi đã nghĩ ra đoạn mã trên [với sự trợ giúp từ kênh IRC của OpenProjects
[c in str for c in set]
4]. Được viết theo cách này, nó thực sự tương thích với suy nghĩ của con người, mặc dù bạn có thể không nghĩ ra mã như vậy bằng trực giác. Đó thường là trường hợp với việc hiểu danh sách

Đoạn mã sau tạo một danh sách các giá trị

[c in str for c in set]
5/
[c in str for c in set]
6, một giá trị cho mỗi mục trong tập hợp

[c in str for c in set]

Sau đó, mã này kiểm tra xem có ít nhất một giá trị thực trong danh sách đó không


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
2

Tương tự, điều này kiểm tra xem không có giá trị sai nào trong danh sách


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
3

Các ví dụ sử dụng được truyền tốt nhất dưới dạng các bài kiểm tra đơn vị để được thêm vào tệp nguồn

[c in str for c in set]
7 của mô-đun này, với thành ngữ thông thường để đảm bảo rằng các bài kiểm tra thực thi nếu mô-đun chạy dưới dạng tập lệnh chính


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
5

Tất nhiên, trong khi các thành ngữ trước rất gọn gàng, vẫn có những lựa chọn thay thế [không phải lúc nào cũng vậy sao?]. Dưới đây là những lựa chọn thay thế cơ bản nhất — và do đó, theo một nghĩa nào đó, là những lựa chọn thay thế Pythonic nhất


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
6

Dưới đây là một số lựa chọn thay thế đảm bảo vòng lặp tối thiểu [trả lại sớm nhất có thể]. Đây là những điều ngắn gọn nhất và do đó, theo một nghĩa nào đó, mạnh mẽ nhất


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
7

Dưới đây là một số biến thể thậm chí còn mỏng hơn của biến thể thứ hai dựa trên một phương thức đặc biệt mà các đối tượng chuỗi chỉ cung cấp trong Python 2. 2 trở lên


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
8

Và đây là một biến thể phức tạp dựa trên chức năng cũng có sẵn trong 2. 0


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
9

May mắn thay, cách tiếp cận khá phức tạp này thiếu một biến thể rõ ràng ngay lập tức có thể áp dụng để triển khai

[c in str for c in set]
8. Tuy nhiên, một lược đồ phức tạp cuối cùng, dựa trên khả năng xóa tất cả các ký tự trong một tập hợp của
[c in str for c in set]
9, sẽ áp dụng cho cả hai chức năng

import collections

check_string = "Write a Python program to find the repeated character in a given string"
d = collections.defaultdict[int]
for c in check_string:
    d[c] += 1

print[d]
2

Thủ thuật này ít nhất cũng có chiều sâu—nó dựa vào việc


check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
20 là dãy con của

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
21 được tạo thành từ các ký tự không có trong

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
22. Nếu dãy con đó có cùng độ dài với

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
21, không có ký tự nào bị xóa bởi

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
24, vì vậy không có ký tự nào của

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
21 nằm trong

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
22. Ngược lại, nếu dãy con đó có độ dài bằng 0 thì tất cả các ký tự đã bị loại bỏ, do đó tất cả các ký tự của

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
21 nằm trong

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
22. Phương thức

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
29 của các đối tượng chuỗi tiếp tục xuất hiện một cách tự nhiên khi người ta muốn coi các chuỗi là tập hợp các ký tự, một phần vì nó rất nhanh và một phần vì nó rất tiện dụng và linh hoạt. Xem Công thức 3. 8 cho một ứng dụng tương tự khác

Một quan sát cuối cùng là những cách tiếp cận nhiệm vụ khác nhau này có mức độ tổng quát rất khác nhau. Ở một thái cực, cách tiếp cận sớm nhất, chỉ dựa vào

[c in str for c in set]
0 [để lặp trên

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
22 và để trở thành thành viên của

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
21] là cách chung nhất; . Ở một thái cực khác, cách tiếp cận cuối cùng, dựa vào phương thức

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
29, chỉ hoạt động khi cả

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
22 và

check_string = "Write a Python program to find the repeated character in a given string"
count = {}
for s in check_string:
    if s != ' ':
        if s in count:
            count[s] += 1
        else:
            count[s] = 1
print[count]
21 đều là chuỗi hoặc chức năng của các đối tượng chuỗi gần giống nhau

công thức 3. số 8;

Chủ Đề