def factorial(n):
"""Function to return the factorial
of a number using recursion"""
if n == 1:
return n
else:
return n*factorial(n-1)
def main():
for i in range(1,10):
f = factorial(i)
print(f'{i}! = {f}')
if __name__ == "__main__":
main()
为得到结果,我不断收到一条错误消息,显示打印语句所在的位置,显示“语法无效”。
我正在创建一个阶乘函数,我希望输出看起来像这样:
1!=1
2!=2
3!=6
4!=24
5!=120
6!=720
7!=5040
8!=40320
9!=362880
我已经一遍又一遍地检查我的代码,看我是否犯了任何错误,但没有检测到任何错误。
答案 0 :(得分:1)
打印声明
print(f'{n}! = {f}')
如果您使用的Python版本低于3.6,则可能会出现SyntaxError-阅读here。
该版本中引入了f字符串语法。
如果您使用的是较低版本,则可以尝试使用format
方法-读为here-这样:
print("{}! = {}".format(n, f))
答案 1 :(得分:0)
def factorial(n):
"""Function to return the factorial of a number using recursion"""
if n == 1:
return n
else:
return n*factorial(n-1)
def main():
print("NOTE: Parameter n has to be greater or equal to 1")
n = int(input("Parameter 1: "))
m = int(input("Parameter 2: "))
print()
for i in range(n,m):
f = factorial(i)
#print(f'{i}! = {f})
print("{}! = {}".format(i, f))
if __name__ == "__main__":
main()