Hướng dẫn how do you count unique characters in a string in python? - làm thế nào để bạn đếm các ký tự duy nhất trong một chuỗi trong python?

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    ĐọcS consisting of lowercase English alphabets, the task is to find the number of unique characters present in the string.

    Examples:

    Input: S = "geeksforgeeks"
    Output: 7
    Explanation: The given string "geeksforgeeks" contains 6 unique characters {'g', 'e', 'k', 's', 'f', 'o', 'r'}.
    Input: S = "madam"
    Output: 3

    Bàn luận The idea to solve the given problem is to initialize a Set[] in python to store all distinct characters of the given string and then, print the size of the set as the required answer.

    Đưa ra một chuỗi bao gồm bảng chữ cái tiếng Anh thường, nhiệm vụ là tìm số lượng ký tự duy nhất có trong chuỗi.

    Python3

    Cách tiếp cận: Ý tưởng để giải quyết vấn đề đã cho là khởi tạo một set [] trong python để lưu trữ tất cả các ký tự riêng biệt của chuỗi đã cho và sau đó, in kích thước của tập hợp như câu trả lời cần thiết.

    Dưới đây là việc thực hiện phương pháp trên:

    def

    Input: S = "madam"
    Output: 3
    0
    Input: S = "madam"
    Output: 3
    1
    Input: S = "madam"
    Output: 3
    2

    Input: S = "madam"
    Output: 3
    3
    Input: S = "madam"
    Output: 3
    4
    Input: S = "madam"
    Output: 3
    5
    Input: S = "madam"
    Output: 3
    6
    Input: S = "madam"
    Output: 3
    7
    Input: S = "madam"
    Output: 3
    1____19

    Input: S = "madam"
    Output: 3
    3
    7
    1
    7
    22.

    7
    4
    7
    5
    Input: S = "madam"
    Output: 3
    5
    Input: S = "madam"
    Output: 3
    5
    7
    8
    7
    9

    Input: S = "madam"
    Output: 3
    3
    len[set["stackoverflow"]]  # returns 12
    
    1
    Input: S = "madam"
    Output: 3
    5
    len[set["stackoverflow"]]  # returns 12
    
    3
    O[NlogN] 

    Input: S = "madam"
    Output: 3
    3
    len[set["stackoverflow"]]  # returns 12
    
    5
    len[set["stackoverflow"]]  # returns 12
    
    6
    O[N] // An extra variable store all the characters of the string and in worst case all characters will be unique hence algorithm takes up linear space

    Độ phức tạp về thời gian: o [nlogn] & nbsp;Counter function:

    Không gian phụ trợ: O [n] // Một biến bổ sung lưu trữ tất cả các ký tự của chuỗi và trong trường hợp xấu nhất, tất cả các ký tự sẽ là duy nhất do đó thuật toán chiếm không gian tuyến tính

    Phương pháp 2: Sử dụng chức năng truy cập:

    Python3

    Đếm tần số của tất cả các phần tử bằng cách sử dụng hàm bộ đếm và số khóa của từ điển tần số này cho kết quả.

    Cách tiếp cận: Ý tưởng để giải quyết vấn đề đã cho là khởi tạo một set [] trong python để lưu trữ tất cả các ký tự riêng biệt của chuỗi đã cho và sau đó, in kích thước của tập hợp như câu trả lời cần thiết.

    Dưới đây là việc thực hiện phương pháp trên:

    def

    Input: S = "madam"
    Output: 3
    0
    Input: S = "madam"
    Output: 3
    1
    Input: S = "madam"
    Output: 3
    2

    Input: S = "madam"
    Output: 3
    3
    Input: S = "madam"
    Output: 3
    4
    Input: S = "madam"
    Output: 3
    5
    Input: S = "madam"
    Output: 3
    6
    Input: S = "madam"
    Output: 3
    7
    Input: S = "madam"
    Output: 3
    1____19

    Input: S = "madam"
    Output: 3
    3
    7
    1
    7
    22.

    Input: S = "madam"
    Output: 3
    3
    len[set["stackoverflow"]]  # returns 12
    
    5
    len[set["stackoverflow"]]  # returns 12
    
    6

    Output:

    7

    7
    4
    7
    5
    Input: S = "madam"
    Output: 3
    5
    Input: S = "madam"
    Output: 3
    5
    7
    8
    7
    9
    O[NlogN]

    Input: S = "madam"
    Output: 3
    3
    len[set["stackoverflow"]]  # returns 12
    
    1
    Input: S = "madam"
    Output: 3
    5
    len[set["stackoverflow"]]  # returns 12
    
    3
    O[N] an extra variable stores all the frequencies of the string hence algorithm takes up linear space

    Input: S = "madam"
    Output: 3
    3
    len[set["stackoverflow"]]  # returns 12
    
    5
    len[set["stackoverflow"]]  # returns 12
    
    6

    • Độ phức tạp về thời gian: o [nlogn] & nbsp;
    • Không gian phụ trợ: O [n] // Một biến bổ sung lưu trữ tất cả các ký tự của chuỗi và trong trường hợp xấu nhất, tất cả các ký tự sẽ là duy nhất do đó thuật toán chiếm không gian tuyến tính
    • Phương pháp 2: Sử dụng chức năng truy cập:
    • Đếm tần số của tất cả các phần tử bằng cách sử dụng hàm bộ đếm và số khóa của từ điển tần số này cho kết quả.

    Python3

    Dưới đây là việc thực hiện:

    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17 because case sensitive and count whitespace
    
    1
    Input: S = "madam"
    Output: 3
    5
    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17 because case sensitive and count whitespace
    
    3

    len[set["stackoverflow"]]  # returns 12
    
    7
    len[set["stackoverflow"]]  # returns 12
    
    8
    len[set["stackoverflow"]]  # returns 12
    
    9
    string = 'aabbcd'
    unique = []
    for char in string[::]:
        if char not in unique:
            unique.append[char]
    print[len[unique]]
    
    0

    Input: S = "madam"
    Output: 3
    3
    string = 'aabbcd'
    unique = []
    for char in string[::]:
        if char not in unique:
            unique.append[char]
    print[len[unique]]
    
    6
    Input: S = "madam"
    Output: 3
    5
    string = 'aabbcd'
    unique = []
    for char in string[::]:
        if char not in unique:
            unique.append[char]
    print[len[unique]]
    
    8
    Input: S = "madam"
    Output: 3
    1
    Input: S = "madam"
    Output: 3
    9

    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17
    
    4
    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17 because case sensitive and count whitespace
    
    1
    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17
    
    6
    Input: S = "madam"
    Output: 3
    5
    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17
    
    8

    len[set["stackoverflow"]]  # returns 12
    
    5
    Input: S = "madam"
    Output: 3
    7
    7
    2def2


    Tôi phải tìm số lượng ký tự duy nhất trong một chuỗi.

    Đây là sản phẩm đánh bắt, không có mảng hoặc thậm chí def3 vòng lặp [mặc dù vòng lặp

    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17 because case sensitive and count whitespace
    
    4 có thể thực hiện được điều này]. Tôi dường như không thể làm điều đó mà không viết một loạt các câu nói lố bịch 24 -________ 96 dưới một vòng lặp
    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17 because case sensitive and count whitespace
    
    4 Kiểm tra từng giá trị char với nhau.

    mkrieger1

    Huy hiệu vàng 16K449 Huy hiệu bạc57 Huy hiệu đồng4 gold badges49 silver badges57 bronze badges

    Đã hỏi ngày 21 tháng 2 năm 2015 lúc 4:22Feb 21, 2015 at 4:22

    7

    Dùng cái này:

    len[set["stackoverflow"]]  # returns 12
    

    Đã trả lời ngày 17 tháng 7 năm 2019 lúc 11:08Jul 17, 2019 at 11:08

    Vlad Havriukvlad HavriukVlad Havriuk

    1.17114 Huy hiệu bạc26 Huy hiệu đồng14 silver badges26 bronze badges

    Vì bạn đã nói rằng bạn không được phép sử dụng

    Input: S = "madam"
    Output: 3
    6 và do đó, giải pháp Christian khuyến nghị: def9

    Bạn có thể giải quyết nó bằng cách sử dụng vòng lặp

    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17 because case sensitive and count whitespace
    
    4 như bạn muốn như vậy:

    string = 'aabbcd'
    unique = []
    for char in string[::]:
        if char not in unique:
            unique.append[char]
    print[len[unique]]
    

    Đầu ra:

    Input: S = "madam"
    Output: 3
    01

    Vui lòng tải lên các nỗ lực của bạn vào lần tới và hãy để chúng tôi thử và giúp bạn với lý do tại sao chúng không hoạt động. Trang web này không phải để làm bài tập về nhà của bạn cho bạn.

    Chỉnh sửa: Danh sách thay thế [] mà bạn cũng nói rằng bạn không thể sử dụng.

    Đã trả lời ngày 21 tháng 2 năm 2015 lúc 4:50Feb 21, 2015 at 4:50

    ValevaleVale

    1.0037 huy hiệu bạc22 Huy hiệu đồng7 silver badges22 bronze badges

    1

    Đếm số lượng ký tự duy nhất trong một python chuỗi chỉ sử dụng cho các vòng lặp và các hoạt động ifel

    Để đếm số lượng các chữ cái ASCII duy nhất trong chuỗi

    Input: S = "madam"
    Output: 3
    02:

    import string
    
    s = 'AabC'
    s = s.lower[]
    print[sum[1 for c in string.ascii_lowercase if s.count[c] == 1]]
    

    Nếu bạn muốn đếm riêng các chữ cái trên/chữ thường thì hãy xóa dòng

    Input: S = "madam"
    Output: 3
    03 và sử dụng
    Input: S = "madam"
    Output: 3
    04 thay vì
    Input: S = "madam"
    Output: 3
    05. Kết quả có thể khác với
    Input: S = "madam"
    Output: 3
    06 nếu có thể có các ký hiệu khác trong chuỗi như dấu chấm câu, ví dụ:
    Input: S = "madam"
    Output: 3
    07

    Đã trả lời ngày 21 tháng 2 năm 2015 lúc 9:59Feb 21, 2015 at 9:59

    JFSJFSjfs

    384K183 Huy hiệu vàng949 Huy hiệu bạc1622 Huy hiệu Đồng183 gold badges949 silver badges1622 bronze badges

    Vì vậy, không được phép là; 'trong khi các vòng', 'đặt', 'mảng' [và liệt kê tôi giả sử] ..

    Bạn có thể tạo một chuỗi với tất cả các ký tự độc đáo và vòng lặp thông qua các ký tự có vòng lặp, bằng cách này bạn không cần một danh sách, mảng mảng hoặc trong khi vòng lặp.

    letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz,.?*&^%$#@!etc"
    def unique_count[some_string]:
        letter_count = 0
        for letter in letters:
            if letter in some_string:
            letter_count += 1
        return letter_count
    
    print[unique_count["whatEver@"]
    

    // cái này sẽ in 9 [vì E! = E]

    Có lẽ không thanh lịch vì chuỗi dài để phù hợp với, nhưng nó đáp ứng yêu cầu không sử dụng danh sách, mảng hoặc trong khi vòng lặp.

    Đã trả lời ngày 8 tháng 9 năm 2020 lúc 18:50Sep 8, 2020 at 18:50

    Bạn có thể thực hiện theo cách này bằng cách chỉ sử dụng cho vòng lặp và bằng cách áp dụng chức năng Len [] trên danh sách.

    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17 because case sensitive and count whitespace
    

    Bạn cũng có thể tạo một chức năng và gọi nó bất cứ khi nào bạn muốn chỉ bằng cách truyền đối số.

    def unique_count[word]:
      k=list[]
      for x in word:
        if x not in k:
          k.append[x]
      return len[k]
    
    print[unique_count["stackoverflow is goOd"]]
    
    //prints 17
    

    Dharman ♦

    28.3K21 Huy hiệu vàng75 Huy hiệu bạc127 Huy hiệu đồng21 gold badges75 silver badges127 bronze badges

    Đã trả lời ngày 13 tháng 8 năm 2020 lúc 9:51Aug 13, 2020 at 9:51

    Làm thế nào để bạn tìm thấy số lượng ký tự duy nhất trong một chuỗi trong Python?

    Phương pháp 3: Không sử dụng bất kỳ phương pháp tích hợp nào..
    Nhập một chuỗi và khởi tạo một chuỗi trống khác ..
    Lặp lại một vòng lặp cho chuỗi đã cho và kiểm tra xem mỗi ký tự của chuỗi đã cho có trong chuỗi trống ..
    Nếu không trình bày, hãy nối các ký tự vào chuỗi trống ..

    Làm thế nào để bạn đếm các ký tự duy nhất trong một chuỗi?

    Cách tiếp cận: Vấn đề đã cho có thể được giải quyết bằng cách sử dụng cấu trúc dữ liệu đã đặt.Ý tưởng là khởi tạo một tập hợp không được đặt hàng lưu trữ tất cả các ký tự riêng biệt của chuỗi đã cho.Kích thước của tập hợp sau khi chuỗi được chuyển qua là câu trả lời cần thiết.using the set data structure. The idea is to initialize an unordered set that stores all the distinct characters of the given string. The size of the set after the string is traversed is the required answer.

    Làm thế nào để bạn tìm thấy các chuỗi độc đáo trong Python?

    Sử dụng Numpy nhập khẩu của Python, các yếu tố duy nhất trong mảng cũng thu được.Trong bước đầu tiên, hãy chuyển đổi danh sách thành xconvert the list to x=numpy. array[list] and then use numpy. unique[x] function to get the unique values from the list.

    Bạn có thể đếm các ký tự trong một python chuỗi không?

    Trong Python, bạn có thể có độ dài của chuỗi str [= số lượng ký tự] với hàm tích hợp len [].you can get the length of a string str [= number of characters] with the built-in function len[] .

    Bài Viết Liên Quan

    Chủ Đề