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

王林
王林 转载
2023-08-19 08:58:26 583浏览

使用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 run
print(final_result) # The output after union Operation Will be shown

输出

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

Wraeth  

字典

在这种方法中,我们将使用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 run
print(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 run
print(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 run
print(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 occur
def 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 element

def 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 run
print(final_result) # The output after union Operation Will be shown

输出

The output of the above example will look as follows:

Wraeth 

结论

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

以上就是使用Python进行两个字符串的并集操作的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:tutorialspoint,如有侵犯,请联系admin@php.cn删除