我正在学习编程,我正在使用“如何像计算机科学家一样思考”上面的问题是一个练习 这是一个没有函数的程序
fruit = "banana"
index = 0
while index < len(fruit):
letter = fruit[index]
print(letter)
index = index + 1
我想把它变成一个函数
def tranversal(fruit):
index = 0
while index < len(fruit):
letter = fruit[index]
return letter
index += 1
print(tranversal("apple"))
然而,这只是打印“苹果”的第一个字母,如果我使用打印语句而不是返回,我将一无所获。 我很困惑,需要帮助!!你知道吗
如果在函数中使用print,则在调用函数时不需要使用print。你知道吗
如果您在while循环中使用return语句,那么您将立即离开函数(并返回第一个字母),对于更高的索引,while循环将不会执行。你知道吗
一个简单的解决方案:
输出:
借助于星形运算符
*
,您可以将一个列表或一个字符串拆分为多个部分,并将它们作为多个参数传递给函数。所以表达式print(*'abc')
等价于print('a', 'b', 'c')
。你知道吗似乎您不了解函数中return语句的用途。你可能想先读this answer,把事情弄清楚。你知道吗
一旦理解了
print()
和return
之间的区别,就应该定义函数需要做什么。它需要返回答案吗?还是在屏幕上打印就足够了?你知道吗假设后者,假设字符串是可iterable的,一种更具python风格的方法是:
请注意,如果您尝试以下操作,则函数不会显式返回值:
变量
foo
将保存值None
。你知道吗如果希望函数返回答案而不打印它,可以将每个字母附加到一个空的
result
字符串中,每行用分隔符,完成后,只需返回result
。这可能是一个很好的练习,所以你应该试试:)。你知道吗相关问题 更多 >
编程相关推荐