gpt4 book ai didi

python - 在Python中循环列表和嵌套列表

转载 作者:行者123 更新时间:2023-11-30 21:53:22 30 4
gpt4 key购买 nike

我正在尝试向 Python 中的字符串列表添加前缀。字符串列表可以包含多层嵌套列表。

有没有办法在保持结构的同时循环访问此列表(及其嵌套列表)?

嵌套的 for 循环很快变得不可读,而且似乎不是正确的方法..

list = ['a', 'b', ['C', 'C'], 'd', ['E', ['Ee', 'Ee']]]

for i in list:
if isinstance(i, list):
for a in i:
a = prefix + a
#add more layers of for loops
else:
i = prefix + i

期望的结果:

prefix = "#"
newlist = ['#a', '#b', ['#C', '#C'], '#d', ['#E', ['#Ee', '#Ee']]]

提前致谢!

最佳答案

您可以编写一个简单的递归函数

def apply_prefix(l, prefix):
# Base Case
if isinstance(l, str):
return prefix + l
# Recursive Case
else:
return [apply_prefix(i, prefix) for i in l]


l = ['a', 'b', ['C', 'C'], 'd', ['E', ['Ee', 'Ee',]]]

print(apply_prefix(l, "#"))
# ['#a', '#b', ['#C', '#C'], '#d', ['#E', ['#Ee', '#Ee']]]

关于python - 在Python中循环列表和嵌套列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59684391/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com