Python 返回函数值以确定要打印的内容
我将用参数“n”生成一个函数。我想要一个函数将“n”返回为0或1。如果为0,则认为用户输入小于或等于0。如果为1,则认为用户输入大于0 这就是我到目前为止所做的,我不知道如何纠正我的错误Python 返回函数值以确定要打印的内容,python,Python,我将用参数“n”生成一个函数。我想要一个函数将“n”返回为0或1。如果为0,则认为用户输入小于或等于0。如果为1,则认为用户输入大于0 这就是我到目前为止所做的,我不知道如何纠正我的错误 def main(): n = int(input("Enter a value: ")) integer(n) def integer(n): if n <= 0: return n*0 elif n > 0: return n*0
def main():
n = int(input("Enter a value: "))
integer(n)
def integer(n):
if n <= 0:
return n*0
elif n > 0:
return n*0 + 1
def integer(n=0):
print("That value is less than or equal to 0")
def integer(n=1):
print("That value is greater than 0")
main()
def main():
n=int(输入(“输入值:”)
整数(n)
def整数(n):
如果n 0:
返回n*0+1
def整数(n=0):
打印(“该值小于或等于0”)
def整数(n=1):
打印(“该值大于0”)
main()
您的问题是您已经覆盖了整数的定义。下面的脚本工作正常。另外,n*0
是不必要的,因为它的计算结果总是为0
def main():
n = int(input("Enter a value: "))
fb=integer(n)
if fb == 0:
print("That value is less than or equal to 0")
else:
print("That value is greater than 0")
def integer(n):
if n <= 0:
return 0
elif n > 0:
return 1
main()
def main():
n=int(输入(“输入值:”)
fb=整数(n)
如果fb==0:
打印(“该值小于或等于0”)
其他:
打印(“该值大于0”)
def整数(n):
如果n 0:
返回1
main()
您的问题是您已经覆盖了整数的定义。下面的脚本工作正常。另外,n*0
是不必要的,因为它的计算结果总是为0
def main():
n = int(input("Enter a value: "))
fb=integer(n)
if fb == 0:
print("That value is less than or equal to 0")
else:
print("That value is greater than 0")
def integer(n):
if n <= 0:
return 0
elif n > 0:
return 1
main()
def main():
n=int(输入(“输入值:”)
fb=整数(n)
如果fb==0:
打印(“该值小于或等于0”)
其他:
打印(“该值大于0”)
def整数(n):
如果n 0:
返回1
main()
试试下面的代码,它要短得多:
def main():
d = {0:'That value is less than or equal to 0',1:"That value is greater than 0"}
n = int(input("Enter a value: "))
fb=integer(n)
print(d[fb])
def integer(n):
return 0 if n <= 0 else 1
main()
def main():
d={0:'该值小于或等于0',1:'该值大于0'}
n=int(输入(“输入值:”)
fb=整数(n)
打印(d[fb])
def整数(n):
如果n尝试下面的代码,则返回0,它要短得多:
def main():
d = {0:'That value is less than or equal to 0',1:"That value is greater than 0"}
n = int(input("Enter a value: "))
fb=integer(n)
print(d[fb])
def integer(n):
return 0 if n <= 0 else 1
main()
def main():
d={0:'该值小于或等于0',1:'该值大于0'}
n=int(输入(“输入值:”)
fb=整数(n)
打印(d[fb])
def整数(n):
返回0如果n为什么不返回一个布尔值而不是1或0?这是否总是输出“该值大于0”?为什么不返回一个布尔值而不是1或0?这是否总是输出“该值大于0”?如果您真的想。。。但是它失去了清晰性。如果你真的想要的话,整个事情可以用lambda
定义的函数浓缩成一行。。。但它失去了清晰性。