所以我需要创建一个函数,在整数列表上迭代,并打印字符串中的字符,这些整数作为索引。像这样:
printString('123456789',[1,7,5,3])
2
8
6
4
我有这个:
def printString(s,list):
i=0
resultString=str()
for i in range(len(list)):
resultString= s[list[i]]
i=i+1
print (resultString)
但是它只打印字符串的第一个字符,我猜for循环有问题,我就是找不到它是什么。你知道吗
任何帮助都是有用的!谢谢
这是因为您没有将所有结果追加到字符串中,这将给出答案:
2864
移动
print(resultString)
,使其位于循环内。你知道吗附加但非必要的建议:
您不需要
i=0
或i=i+1
,因为for
循环已经为您完成了创建和增加值的工作。你知道吗您不需要
resultString=str()
,因为Python非常乐意在函数中间创建一个新变量,而不需要任何关于其类型的提示。你知道吗您根本不需要
resultString
,因为您只使用它的值一次。你知道吗如果您对索引没有特定的需求,那么最好迭代列表的元素而不是索引。你知道吗
尽量不要使用与内置类型名称相同的变量名称。你知道吗
导致以下结果的函数:
可以通过多种方式实现,这就是我要做的。你知道吗
Live Demo
相关问题 更多 >
编程相关推荐