如何在 Python 列表中为字符串添加后缀/前缀?
简介
本文将向用户讲解如何在 Python 列表中为字符串添加后缀/前缀。列表会使用这些 “[]” 括号存储不同数据类型的元素。Python 语言可以进行字符串操作。Python 中有各种内置字符串方法可以为 Python 列表中的字符串添加后缀/前缀,例如 reduce()、map() 等。本文演示了两种方法,可以将指定字符添加到字符串的开头或结尾。
实现此目标的方法多种多样,一些方法可能只是简单的循环迭代,另一些则可能用到一些函数和方法。
语法
reduce()
Python 中的 collections 模块有许多子类,例如 “defaultdict()” 和 reduce() 方法。reduce() 方法始终使用两个参数,然后将其缩减为单个值。
map()
这是一个 Python 内置函数,用于迭代数字列表中的每个项目。
方法
方法 1 - 使用 typing 模块
方法 2 - 使用 functools 模块
方法 1:使用 typing 模块为字符串添加后缀/前缀的 Python 程序
定义了两个列表,一个列表中有三个元素,另一个元素是要添加到第一个列表中的字符串。然后调用函数获取列表的值并将其打印出来。
算法
步骤 1 - 从 typing 模块导入所需的函数
步骤 2 - 定义一个带有三个参数的函数,用于向列表添加后缀或前缀
步骤 3 - 使用 map() 和 lambda 表达式将后缀/前缀添加到列表的每个元素
步骤 4 - 打印 append() 函数后的完整列表。
示例
# Importing the list function from typing module from typing import List # Defining the function to add suffix/prefix to a list def add_suffix_prefix_to_list(lst: List[str], suffix: str, prefix: str) -> List[str]: # Adding the suffix to list’s element using map() and lambda expression suffix_list = list(map(lambda a: a + suffix, lst)) # Adding the prefix to list’s element using map() and lambda expression prefix_list = list(map(lambda a: prefix + a, lst)) # Returns the complete list after appending return suffix_list, prefix_list # Initializing list with three elements list_1 = ['note', 'book','pen'] # The additional elements that need to be added to the list list_2 = 's' # Calling the function to add suffix/prefix to the list suffix_list, prefix_list = add_suffix_prefix_to_list(list_1, list_2, list_2) # Printing the complete lists after adding suffix/prefix print("suffix addition of element to list", suffix_list) print("prefix addition of element to list", prefix_list)
输出
suffix addition of element to list ['notes', 'books', 'pens'] prefix addition of element to list ['snote', 'sbook', 'spen']
方法 2:使用 functools 模块为字符串添加后缀/前缀的 Python 程序
导入 functools 库并定义两个列表,一个列表中有三个元素,另一个元素是要添加到第一个列表中的字符串。然后使用 reduce 函数分别将列表的每个元素添加到前缀和后缀中。
算法
步骤 1 - 从 functools 模块导入所需的函数
步骤 2 - 使用字符串元素初始化列表。
步骤 3 - 初始化另一个列表,以向现有列表添加后缀或前缀。
步骤 4 - 使用 reduce() 函数进行追加并打印结果。
示例
# The reduce function is imported from functools import reduce # Initializing list with three elements list_1 = ['note', 'book','pen'] # The additional elements that need to be added to the list list_2 = 's' # Adding the suffix to each element of the list using reduce() function suffix_list = reduce(lambda x, y: x + [y + list_2], list_1, []) # Adding the prefix to each element of the list using reduce() function prefix_list = reduce(lambda x, y: x + [list_2 + y], list_1, []) # Printing the complete lists after adding suffix/prefix print("suffix addition of element to list", suffix_list) print("prefix addition of element to list", prefix_list)
输出
suffix addition of element to list ['notes', 'books', 'pens'] prefix addition of element to list ['snote', 'sbook', 'spen']
结论
本文说明了两种方法。第一种方法从 typing 库导入 map() 和 list() 函数。定义一个函数,用于向列表添加前缀和后缀。稍后使用 map() 函数和 lambda 将列表的每个元素分别添加到前缀和后缀中。