我正在使用嘶嘶声练习来学习一些关于python的知识。我已经硬编码了 1-100 的范围,但我很好奇如何使用参数将范围传递到函数中来实现相同的结果?
numbers = range (1,101)
def fizzbuzz(numbers):
for each in numbers:
if each % 3 == 0 and each % 5 == 0:
print "fizzbuzz"
elif each % 3 == 0:
print "fizz"
elif each % 5 == 0:
print "buzz"
else:
print each
print fizzbuzz(numbers)
你可以使用 Python 的 itertools.count 并只传入最大值。
https://docs.python.org/2/library/itertools.html
def fizzbuzz(num):
for i in itertools.count(start=1,step=1):
if (i==num):
break
..fizzbuz logic
fizzbuzz(num)
def fizzbuzz(num_range):
for each in num_range:
if each % 3 == 0 and each % 5 == 0:
print "fizzbuzz"
elif each % 3 == 0:
print "fizz"
elif each % 5 == 0:
print "buzz"
else:
print each
print fizzbuzz(range (1,101))