我正在尝试以以下格式拆分给定的字符串输入:
automobile car manufacturer maker children kids
并将其转换为如下所示的列表:
[['automobile','car'],['manufacturer', 'maker'], ['children', 'kids']]
外层列表基本上应该由三个空格分隔,而内部列表基本上应该由单个空格分隔。
我的代码:
replacement_pairs = input().split(' ')
for p in replacement_pairs:
p = p.split(' ')
print(replacement_pairs)而是返回以下内容:
['automobile car', 'manufacturer maker', 'children kids']
发布于 2021-11-08 14:46:11
使用简单的列表理解
data = 'automobile car manufacturer maker children kids'
replacement_pairs = [group.split(' ') for group in data.split(' ')]
print(replacement_pairs)结果:
[['automobile', 'car'], ['manufacturer', 'maker'], ['children', 'kids']]在您当前的代码中:
p = p.split(' ')是一个无操作,因为在下一次迭代中,p只是被分配给下一个元素。您不能对其进行任何赋值。一个简单的解决方法是使用累加列表而不是赋值:
replacement_pairs = input().split(' ')
result = []
for p in replacement_pairs:
result.append(p.split(' '))
print(result)https://stackoverflow.com/questions/69885335
复制相似问题