Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我们可以在python中的return语句之后执行代码吗?_Python_Python 3.x_Return - Fatal编程技术网

我们可以在python中的return语句之后执行代码吗?

我们可以在python中的return语句之后执行代码吗?,python,python-3.x,return,Python,Python 3.x,Return,嗨,我是python新手。这可能是个愚蠢的问题。我只是想知道我们能不能运行python中return语句后面写的行 例如: def temp1(): try: str1 = 'abcd' return str1 time.sleep(50) print('xyz') except Exception as ex: print(ex) def temp2(): try: str

嗨,我是python新手。这可能是个愚蠢的问题。我只是想知道我们能不能运行python中return语句后面写的行

例如:

def temp1():
    try:
        str1 = 'abcd'
        return str1
        time.sleep(50)
        print('xyz')
    except Exception as ex:
        print(ex)

def temp2():
    try:
        str2 = temp1()
        print(str2)
    except Exception as ex:
        print(ex)


temp2()

我只想知道在返回值后如何打印-xyz?

有一种方法可以做到这一点。使用try/except/finally

如果try语句到达break、continue或return语句, finally子句将在break、continue或 return语句的执行

见官方


但我认为这不是你真正想要的。

不,这就是
return
语句的意义所在。但是,您可以在上下文管理器中包装一个代码块,它在进入/退出代码块之前/之后执行操作,但我认为这不是您真正想要的。您好@PeterWood,感谢您的回复。您能告诉我您正在讨论的块代码吗?存储变量
str1
,然后执行所有您想执行的操作,然后在函数末尾返回值
return
意味着退出该函数,因此在它之后无法继续运行代码。@ShivikaPatel您搜索了吗?此外,下面的答案很好地说明了如何使用
finally
,我忘记了!