Hướng dẫn how do you find common letters in python? - làm thế nào để bạn tìm thấy các chữ cái phổ biến trong python?

Tôi đang cố gắng in các chữ cái phổ biến từ hai đầu vào người dùng khác nhau bằng cách sử dụng vòng lặp for. . 2. Đầu ra đang cho tôi một danh sách các chữ cái riêng lẻ chứ không phải là một chuỗi. Tôi đã thử phân chia đầu ra nhưng chia ra một lỗi loại.using a for loop. [I need to do it using a for loop.] I am running into two problems: 1. My statement "If char not in output..." is not pulling unique values. 2. The output is giving me a list of individual letters rather than a single string. I tried the split the output but split ran into a type error.

wrd = 'one'
sec_wrd = 'toe'

def unique_letters[x]: 
    output =[]
    for char in x: 
        if char not in output and char != " ": 
            output.append[char]
    return output

final_output = [unique_letters[wrd] + unique_letters[sec_wrd]]

print[sorted[final_output]]

Đã hỏi ngày 4 tháng 2 năm 2018 lúc 18:20Feb 4, 2018 at 18:20

9

Bạn đang cố gắng thực hiện các giao lộ được thiết lập. Python có phương pháp

>>> word_1 = 'one'
>>> word_2 = 'toe'

#    v join the intersection of `set`s to get back the string
#    v                             v  No need to type-cast it to `set`.
#    v                             v  Python takes care of it
>>> ''.join[set[word_1].intersection[word_2]]
'oe'
0 cho cùng. Bạn có thể sử dụng nó cho trường hợp sử dụng của mình như:
>>> word_1 = 'one'
>>> word_2 = 'toe'

#    v join the intersection of `set`s to get back the string
#    v                             v  No need to type-cast it to `set`.
#    v                             v  Python takes care of it
>>> ''.join[set[word_1].intersection[word_2]]
'oe'
0
method for the same. You can use it for your use-case as:

>>> word_1 = 'one'
>>> word_2 = 'toe'

#    v join the intersection of `set`s to get back the string
#    v                             v  No need to type-cast it to `set`.
#    v                             v  Python takes care of it
>>> ''.join[set[word_1].intersection[word_2]]
'oe'

>>> word_1 = 'one'
>>> word_2 = 'toe'

#    v join the intersection of `set`s to get back the string
#    v                             v  No need to type-cast it to `set`.
#    v                             v  Python takes care of it
>>> ''.join[set[word_1].intersection[word_2]]
'oe'
1 sẽ trả về các ký tự duy nhất trong chuỗi của bạn. Phương thức
>>> word_1 = 'one'
>>> word_2 = 'toe'

#    v join the intersection of `set`s to get back the string
#    v                             v  No need to type-cast it to `set`.
#    v                             v  Python takes care of it
>>> ''.join[set[word_1].intersection[word_2]]
'oe'
0 sẽ trả về các ký tự phổ biến trong cả hai tập hợp.

Nếu vòng lặp for phải cho bạn, thì bạn có thể sử dụng danh sách hiểu như:

>>> unique_1 = [w for w in set[word_1] if w in word_2]
# OR
# >>> unique_2 = [w for w in set[word_2] if w in word_1]

>>> ''.join[unique_1]  # Or, ''.join[unique_2]
'oe'

Kết quả trên cũng có thể đạt được với vòng lặp for rõ ràng như:

my_str = ''
for w in set[word_1]:
    if w in word_2:
        my_str += w

# where `my_str` will hold `'oe'`

Đã trả lời ngày 4 tháng 2 năm 2018 lúc 18:31Feb 4, 2018 at 18:31

Moinuddin Quadrimoinuddin QuadriMoinuddin Quadri

44.9K12 Huy hiệu vàng93 Huy hiệu bạc119 Huy hiệu đồng12 gold badges93 silver badges119 bronze badges

2

Đối với loại vấn đề này, có lẽ bạn nên sử dụng các bộ:

wrd = 'one'
sec_wrd = 'toe'
wrd = set[wrd]
sec_wrd = set[sec_wrd]

print[''.join[sorted[wrd.intersection[sec_wrd]]]]

Đã trả lời ngày 4 tháng 2 năm 2018 lúc 18:32Feb 4, 2018 at 18:32

phù hợp với trận đấumatch

9.2733 huy hiệu vàng21 Huy hiệu bạc38 Huy hiệu đồng3 gold badges21 silver badges38 bronze badges

1

Tôi vừa giải quyết điều này ngày hôm nay trên tín hiệu mã. Nó làm việc cho tất cả các bài kiểm tra.

def solution[s1, s2]:

    common_char = ""
    for i in s1:
        if i not in common_char:
        
            i_in_s1 = s1.count[i]
            i_in_s2 = s2.count[i]
        
            comm_num = []
            comm_num.append[i_in_s1]
            comm_num.append[i_in_s2]
        
            comm_i = min[comm_num]
            new_char = i * comm_i
            common_char += new_char
    
  
    return len[common_char]

Đã trả lời ngày 25 tháng 3 lúc 20:37Mar 25 at 20:37

Chức năng giải quyết vấn đề

def find_common_characters[msg1,msg2]:
    #to remove duplication set[] is used.
    set1=set[msg1]
    set2=set[msg2]
    remove={" "}
    #if you wish to exclude space
    set3=[set1&set2]-remove
    msg=''.join[set3]
    return msg

Cung cấp đầu vào và gọi chức năng cung cấp các giá trị khác nhau cho MSG1, MSG2 và kiểm tra chương trình của bạn Provide different values for msg1,msg2 and test your program

msg1="python"
msg2="Python"
common_characters=find_common_characters[msg1,msg2]
print[common_characters]

Đã trả lời ngày 12 tháng 5 năm 2019 lúc 9:56May 12, 2019 at 9:56

Đây là mã một dòng của bạn nếu bạn muốn số lượng ký tự chung giữa chúng!

def solution[s1,s2]:
 return sum[min[s1.count[x],s2.count[x]] for x in set[s1]]

Đã trả lời ngày 23 tháng 7 lúc 16:05Jul 23 at 16:05

mo1010mo1010mo1010

1379 Huy hiệu đồng9 bronze badges

Làm thế nào để bạn tìm thấy những từ phổ biến trong Python?

Khoa học dữ liệu thực tế sử dụng Python..
Chuyển đổi S0 và S1 thành chữ thường ..
S0List: = một danh sách các từ trong S0 ..
S1List: = một danh sách các từ trong S1 ..
Chuyển đổi tập hợp từ các từ trong S0List và S1List, sau đó giao với chúng để có được các từ chung và trả về số lượng kết quả giao lộ ..

Làm thế nào để tôi tìm thấy các chữ cái tương tự trong một chuỗi trong Python?

Chúng ta có thể sử dụng các phương pháp python khác nhau để đạt được mục tiêu của mình.Đầu tiên, chúng ta sẽ tìm thấy các ký tự trùng lặp của một chuỗi bằng phương thức đếm ...
Khởi tạo một chuỗi ..
Khởi tạo một danh sách trống ..
Vòng lặp qua chuỗi.Kiểm tra xem tần số char lớn hơn một hoặc không sử dụng phương pháp đếm ..

Làm thế nào để bạn tìm thấy một lá thư trong một python văn bản?

Phương pháp 1: Lấy vị trí của một ký tự trong python bằng phương thức rfind [] python chuỗi rfind [] trả về chỉ số cao nhất của chuỗi con nếu được tìm thấy trong chuỗi đã cho.Nếu không tìm thấy thì nó sẽ trả về -1.using rfind[] Python String rfind[] method returns the highest index of the substring if found in the given string. If not found then it returns -1.

Làm thế nào để bạn tìm thấy chữ cái chung của hai chuỗi?

Cách tiếp cận: Đếm tần số của tất cả các ký tự từ cả hai chuỗi.Bây giờ, đối với mỗi ký tự nếu tần số của ký tự này trong chuỗi S1 là freq1 và trong chuỗi S2 là freq2 thì tổng số các cặp hợp lệ với ký tự này sẽ là tối thiểu [freq1, freq2].Tổng giá trị này cho tất cả các ký tự là câu trả lời cần thiết.Count the frequencies of all the characters from both strings. Now, for every character if the frequency of this character in string s1 is freq1 and in string s2 is freq2 then total valid pairs with this character will be min[freq1, freq2]. The sum of this value for all the characters is the required answer.

Bài Viết Liên Quan

Chủ Đề