PHP前端开发

使用Python进行两个字符串的并集操作

百变鹏仔 1个月前 (01-20) #Python
文章标签 字符串

Python是全球程序员常用的语言之一,用于各种不同的目的,如机器学习、数据科学、Web开发以及执行许多其他自动化操作。它具有许多不同的功能,可以帮助我们在许多不同的项目上工作。Python的一个特性就是联合操作。联合操作是指将两个不同的字符串合并为一个公共字符串,同时删除两个字符串中的所有公共元素。在本文中,我们将学习可以用于两个字符串的联合操作的不同方法。

联合操作的不同方法

Sets

的中文翻译是:

集合

Sets是Python中提供的一种功能,用于将多个项存储在一个数据集中。它具有一个内置功能,可以从字符串中删除所有共同的元素。让我们举一个例子来更好地理解它:

Example

def multiple_strings(first, second):  # The input of both the strings are given    data1 = set(first)  # Both the strings are then converted into data sets    data2 = set(second)    union_data = data1.union(data2) # After conversion, the data sets are combined with the help of union operation    final_string = ''.join(union_data) # The Combined data set is then converted back into strings    return final_string# Example first = "What"  # The two input strings are defined second = "Where"final_result = multiple_strings(first, second) # The function multiple_strings is runprint(final_result) # The output after union Operation Will be shown

输出

上面示例的输出将如下所示:

Wraeth  

字典

在这种方法中,我们将使用Python字典进行并集操作。字典将用于将所有数据存储为字符串,然后对其进行并集操作。通过这种方法进行并集操作的示例如下:

立即学习“Python免费学习笔记(深入)”;

Example

def multiple_strings(first, second): # The input of both the strings are given    union_dict = {} # A new dictionary is created for the union operation    for char in first:  # All the elements in both the strings are checked and then they are added in the new dictionary created        union_dict[char] = True    for char in second:        union_dict[char] = True  # No duplicate characters will be added because dictionary keys will take input of different characters only    union_string = ''.join(union_dict.keys())    # Once the union operation of the keys is performed, then we will convert the dictionary key back into string    return union_string# Example first = "What"  # The two input strings are defined second = "Where"final_result = multiple_strings(first, second) # The function multiple_strings is runprint(final_result) # The output after union Operation Will be shown

输出

The output of the above example will look as follows:

Whater 

检查清单和会员资格

这是一种非常简单的执行并集操作的方法。我们只需要将字符串转换为列表进行并集操作。这种方法的示例如下:

Example

def multiple_strings(first, second): # The input of both the string is given    combined_strings = list(first) # The first string is converted into a list    for char in second:  #If the element in second string is not present in first string then they are combined into the first list and the union operation is performed        if char not in combined_strings:            combined_strings.append(char)    final_string = ''.join(combined_strings) #The lists are then converted back into string    return final_string# Example first = "What"  # The two input strings are defined second = "Where"final_result = multiple_strings(first, second) # The function multiple_strings is runprint(final_result) # The output after union Operation Will be shown

输出

The output of the above example will look as follows:

Whater  

Set和Pipe操作符的组合使用

这个方法是一种复杂的方法,不应该在简单的组合情况下使用。在这个方法中,字符串被转换成集合,然后我们将使用管道运算符而不是直接使用并集。让我们举个例子来更好地理解:

Example

def multiple_strings(first, second): # The input of both the string is given    first_set = set(first) # Both the strings are converted into sets    second_set = set(second)    final_string = ''.join(first_set | second_set) # Using the pipe operator the respective sets are combined after removing the common elements    return final_string# Example first = "What"  # The two input strings are defined second = "Where"final_result = multiple_strings(first, second) # The function multiple_strings is runprint(final_result) # The output after union Operation Will be shown

输出

上面示例的输出将如下所示:

Wraeth 

Itertools模块

itertools模块用于高效地检查数据集中的所有循环。它有许多不同的函数,可以用于许多不同的目的。我们将使用两个不同的函数来执行并集操作。让我们通过一个例子来更好地理解:

Example

import itertools # Do not forget to import itertools or else error might occurdef unique_everseen(iterable, key=None):    seen = set()    seen_add = seen.add    if key is None:  # The input of both the string is given        for element in itertools.filterfalse(seen.__contains__, iterable):# Through the chain() function we will combine both the strings into cone common string            seen_add(element)            yield element    else:        for element in iterable:            k = key(element)            if k not in seen:                seen_add(k)                yield elementdef multiple_strings(first, second):  # The input of both the string is given    union_string = ''.join(unique_everseen(itertools.chain(string1, string2)))# With the help of unique.everseen() function we will remove all the common elements from the combined string    return union_string# Example first = "What"  # The two input strings are defined second = "Where"final_result = multiple_strings(first, second) # The function multiple_strings is runprint(final_result) # The output after union Operation Will be shown

输出

The output of the above example will look as follows:

Wraeth 

结论

了解可以用于执行并集操作的不同方法非常重要。本文介绍了可以用于执行并集操作的不同方法。根据方便和应用领域,可以使用上述任何方法之一。