在 Python 中为列表中的每个项目添加一个字符
向列表中的每个项目添加一个字符:
- 使用列表理解来遍历列表。
- 使用加法 + 运算符向每个列表项添加一个字符。
- 新列表将包含更新后的值。
my_list = ['www', 'zadmei', 'com']
# ✅ Add a character to the END of each item in a list
new_list = [item + '_' for item in my_list]
print(new_list) # ?️ ['www_', 'zadmei_', 'com_']
# ------------------------------------------------------
# ✅ Add a character to the BEGINNING of each item in a list
new_list = ['_' + item for item in my_list]
print(new_list) # ?️ ['_www', '_zadmei', '_com']
我们使用列表推导来迭代列表。
列表推导用于对每个元素执行某些操作或选择满足条件的元素子集。
在每次迭代中,我们使用加法 + 运算符向每个列表项添加一个字符。
my_list = ['www', 'zadmei', 'com']
new_list = [item + '_' for item in my_list]
print(new_list) # ?️ ['www_', 'zadmei_', 'com_']
它不必是单个字符,您可以使用加法 + 运算符将任何字符串添加到列表项中。
上面的示例将一个字符添加到每个列表项的末尾。
但是
,可以使用相同的方法将字符添加到每个列表项的开头。
my_list = ['www', 'zadmei', 'com']
new_list = ['===' + item for item in my_list]
print(new_list) # ?️ ['===www', '===zadmei', '===com']
确保加法 + 运算符左右两侧的值是字符串。
如果我们有一个整数列表,请在使用加法运算符之前使用 str() 函数将每个整数转换为字符串。
my_list = [1, 2, 3]
new_list = [str(item) + '_' for item in my_list]
print(new_list) # ?️ ['1_', '2_', '3_']
加法 + 运算符左右两侧的值需要是兼容类型。
或者,我们可以使用简单的 for 循环。
使用 for 循环向列表中的每个项目添加一个字符
向列表中的每个项目添加一个字符:
- 使用 enumerate() 函数来访问当前迭代的索引。
- 使用 for 循环迭代枚举对象。
- 使用加法 + 运算符向每个列表项添加一个字符。
my_list = ['www', 'zadmei', 'com']
for index, item in enumerate(my_list):
my_list[index] = item + '==='
print(my_list) # ?️ ['www===', 'zadmei===', 'com===']
enumerate 函数接受一个可迭代对象并返回一个包含元组的枚举对象,其中第一个元素是索引,第二个元素是相应的项目。
my_list = ['www', 'zadmei', 'com']
for index, item in enumerate(my_list):
print(index, item) # ?️ 0 www, 1 zadmei, 2 com
在每次迭代中,我们使用加法 + 运算符将字符串添加到当前列表项的值。
如果我们需要在每个列表项的开头添加一个字符,我们可以使用相同的方法。
my_list = ['www', 'zadmei', 'com']
for index, item in enumerate(my_list):
my_list[index] = '_' + item
print(my_list) # ?️ ['_www', '_zadmei', '_com']
使用这种方法时,我们会改变原始列表。
或者,我们可以使用 map() 函数。
使用 map() 向列表中的每个项目添加一个字符
向列表中的每个项目添加一个字符:
- 使用 lambda 函数和列表调用 map() 函数。
- lambda 函数应使用加法 + 运算符向每个列表项添加一个字符。
- 使用 list() 类将地图对象转换为列表。
my_list = ['www', 'zadmei', 'com']
new_list = list(map(lambda item: item + '_', my_list))
print(new_list) # ?️ ['www_', 'zadmei_', 'com_']
map()
函数将一个函数和一个可迭代对象作为参数,并使用可迭代对象的每个项目调用该函数。
对列表中的每个项目调用 lambda 函数,向每个字符串添加一个字符并返回结果。
最后一步是使用 list() 函数将map对象转换为列表。
选择哪种方法是个人喜好的问题。 我会继续使用列表推导,因为我发现它们非常直观且易于阅读。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。