我仍然是python的初学者,我正在尝试创建一个函数,该函数接受字符串列表作为参数,并用每个字符串的副本替换每个字符串。我的代码有点问题
我能够复制每个字符串,但我遇到了麻烦,因为每个单词都在一个字符串中,而我的原始列表正在打印blist
任何帮助或指导都将不胜感激
这就是我到目前为止所做的:
blist = []
def double_list(alist):
for i in alist:
blist.append(i*2)
return blist
print('original list: ',double_list(['how','are','you?']))
print('double list: ',blist)
输出:
original list: ['howhow', 'areare', 'you?you?']
double list: ['howhow', 'areare', 'you?you?']
预期产出:
original list: ['how', 'are', 'you?']
double list: ['how', 'how', 'are', 'are', 'you?', 'you?']
只需使用extend()-方法,即可将两个列表组合在一起
您还必须更改打印语句,因为否则您只能打印列表的复制版本,而不是原始版本
因此,我们将通过一个列表扩展“blist”,该列表包含2x所需字符串
代码应该如下所示:
您正在将字符串添加到一起。只需附加两次
我相信有更好的方法,但这有助于更好地理解解决方案
如果要使用
* 2
习惯用法,可以使用extend()
并向其传递一个列表,其中包含两个由[i] * 2
组成的项例如:
注意:在
original list: ['howhow', 'areare', 'you?you?']
中获得双精度的原因是,您正在打印函数的返回值,该值不是原始列表相关问题 更多 >
编程相关推荐