我在Python中被赋予了这个问题:
从用户那里获取一个数字列表并在该列表上运行FizzBuzz。
当您循环浏览列表时,请记住以下规则:
1)如果数字可被3和5整除,则打印FizzBuzz
2)如果它只能被3个print整除Fizz
3)如果它只能被5个print整除Buzz
4)否则只需打印号码
还记得伊莱夫!
我已经创建了下面的脚本,但是它在ifn%3=True
处给出了一个错误
n=input()
if n%3=True:
print("Fizz")
else if n%5=True:
print ("Buzz")
elif print n
有人能帮忙吗?非常感谢你!
n % 3
(或n %
任何数字)的计算结果不是True
或False
,它不是布尔表达式。n % 3 == 0
另一方面,是的。另外,当
n % 3 == 0
和n % 5 == 0
都计算为True
时会发生什么?这里的代码有一些问题。第一个问题是,为了进行比较,应该使用
==
,而不是=
,这是用于赋值的。第二个问题是要检查剩余的除法(这是模运算符计算的结果)是zero,而不是true,这并没有真正意义。
您应该使用
elif
表示“否则,如果…”,使用else
表示“否则”。您需要修复else
子句的格式。你想要:
最后,您的代码不符合规范:
上面的不会这么做。这部分我要留给你,因为我不是来为你解决任务的:)
基于this
在这里,
.get()
方法非常有用。操作如下
对于1到100之间的所有整数(不包括101),
根据这些规则打印我们通过get调用的字典键的值。
获取
get
调用中的第一个非False项,或将整数作为字符串返回当检查一个
True
值(因此我们可以查找该值)时,Python的计算结果是0到False
。如果i mod 15=0,那是错误的,我们将转到下一个。因此,我们
NOT
每个“mods”(也称为余数),这样,如果mod==0,即=False,我们就得到一个True语句。我们将True
乘以返回字典键(即3*True == 3
)的字典键当整数不能被3、5或15整除时,我们就陷入打印int
'{}'.format(i)
的默认子句中,只需将i作为字符串插入该字符串。部分产出
气泡
79
嗡嗡声
气泡
82
83
气泡
嗡嗡声
86
气泡
88
89
气泡
91
92
气泡
94
嗡嗡声
气泡
97
98
气泡
嗡嗡声
相关问题 更多 >
编程相关推荐