如何打印有条件语句的返回值



如何在以下代码中返回 if not 2 >= 3:的布尔值?

如何从以前的if语句中获取结果值?我知道它的" true",但是我该如何指代?

def using_control_once():
    if not 2 >= 3:
        return "Success"

print using_control_again()
def using_control_once():
    if not 2 >= 3:
        return "Controlled"

print using_control_once()

我想在评估not 2 >= 3后而不是返回函数分配的值后打印IF语句的值

在以下代码中,我没有为条件变量分配任何新值。我们只是在这里返回条件本身的值。

我认为这就是您要寻找的。

def using_control_once():
    condition = not 2 >= 3
    if condition:
        return condition
print(using_control_once())

在python中,在有条件的语句中:

if <condition>:
    <statement>

<condition>在布尔上下文中进行评估,但并未保存在变量中。您在这里有两个选择:

1(如果您只需要打印条件的真实价值:

print(<condition>)

Devesh Kumar Singh建议,或者是安全的一面:

print(str(<condition>))

2(如果您需要if语句:

if <condition>:
    print("True")
    <other statement>
else:
    print("False")
    <other statement>

我希望这会有所帮助。我还建议阅读有关Python中有条件陈述的文章

如果要跟踪评估何时以及如何评估条件,则可以做这样的事情:

from inspect import getouterframes, currentframe, getsourcelines
import re
def test(exp):
    frame_info = getouterframes(currentframe(), 2)[1]
    result = re.search(f'{test.__name__}[ ]*(([^)]+))', frame_info.code_context[1], re.DOTALL)
    condition = '{} is {}'.format(result.group(1), bool(exp))
    print(condition)
    return bool(exp)

def using_control_once(x):
    if test(x < 10):
        return "Success #1"
    if test(x < 20):
        return "Success #2"
    if test(x < 30):
        return "Success #3"

print("x=3")
result = using_control_once(3)
print(f"result is: {result}")
print("nx=13")
result = using_control_once(13)
print(f"result is: {result}")
print("nx=23")
result = using_control_once(23)
print(f"result is: {result}")

输出将是:

x=3
x < 10 is True
result is: Success #1
x=13
x < 10 is False
x < 20 is True
result is: Success #2
x=23
x < 10 is False
x < 20 is False
x < 30 is True
result is: Success #3

非常感谢伙计们,感谢勤奋的维克多,我仍然是Python和编程的新手。这将需要一些时间才能理解,但很高兴它可行。

def test(exp):
    frame_info = getouterframes(currentframe(), 2)[1]
    result = re.search(f'{test.__name__}[ ]*(([^)]+))', 
    frame_info.code_context[1], re.DOTALL)
    condition = '{} is {}'.format(result.group(1), bool(exp))
    print(condition)
    return bool(exp)

相关内容

  • 没有找到相关文章

最新更新