任何人都可以帮助我了解为什么如果我不把break
放在那里的话,代码会给我多个输出。例如:
在:myfunc('abogoboga')
<<
def myfunc(*args): output = [] for strg in args: for char in strg: for i in range(len(strg)): if i % 2 == 0: output.append(strg[i].lower()) else: output.append(strg[i].upper()) break return ''.join(output)
但是,按上述输入break
后:
在:myfunc('abogoboga')出:'aBoGoBoGa'
任何人都可以帮助我了解为什么如果我不加中断的话,代码会给我多个输出。例如:输入:myfunc('abogoboga')输出:'...
for
循环完成相同的事情。 for char in strg
正在为char
中的每个字符分配strg
,但是您从不使用它。取而代之的是,您再次遍历strg
,并且它与break一起工作的原因是,如果在执行一次for char in strg
循环后中断,则您会将for
循环变成一个简单的语句。一种更简单的方法是删除for char in strg
: