如何在不使用任何导入的情况下将列表中的每一项加倍?在
例如:
>>> multiply_items(['a', 'b'])
['a', 'a', 'b', b']
>>> multiply_items(['b', 'a'])
['b', 'b', 'a', a']
>>> multiply_items(['a', 'b', 'c'])
['a', 'a', 'b', b', 'c', c']
>>> multiply_items(['3', '4'])
['3', '3', '4', 4']
>>> multiply_items(['hi', 'bye'])
['hi', 'hi', 'bye', bye']
这是我想到的,但是它将元素组合在一起,而不是在单独的字符串中。在
^{pr2}$我得到的输出:
>>> multiply_items(['3', '4'])
['33', '44']
>>> multiply_items(['hi', 'bye'])
['hihi', 'byebye']
感谢您的帮助:)
如果您在展开一个列表时查看它,其中该列表的每个元素都是重复
n
次的元素,则可以将其编写为嵌套列表组件:通常的警告适用于“相乘”项将同一对象。。。所以要小心包含可变对象的元素。在
我通常更喜欢列表理解:
如此接近。。。天真的方法:
您的问题是由于字符串也是列表,因此
^{pr2}$'a' * 2
不是['a', 'a']
,而是aa
。现在,知道了这个问题,您仍然可以通过在单例列表中移动item
在单个循环中解决它:更好的方法:相关问题 更多 >
编程相关推荐