Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.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 函数接收意外类型_Python_Code Reuse - Fatal编程技术网

Python 函数接收意外类型

Python 函数接收意外类型,python,code-reuse,Python,Code Reuse,考虑以下代码。当调用函数a()时,它将调用函数b()。在function\u b()内部,如果出现“不需要的”情况,则调用function\u c()。如果一切正常,var将返回,并且function\u a()正确完成 问题是: 我希望在调用function\u c()时,程序停止,因为它对应于不需要的行为。此外,var\u x将具有错误消息“,而函数a()处的函数不期望出现该错误消息(例如,意外类型) 我知道有一种方法可以做到这一点,而不必使用exit()或类似的工具。你说的“程序停止”是什

考虑以下代码。当调用
函数a()
时,它将调用
函数b()
。在
function\u b()
内部,如果出现“不需要的”情况,则调用
function\u c()
。如果一切正常,
var
将返回,并且
function\u a()
正确完成

问题是: 我希望在调用
function\u c()
时,程序停止,因为它对应于不需要的行为。此外,
var\u x
将具有
错误消息“
,而
函数a()处的
函数
不期望出现该错误消息(例如,意外类型)


我知道有一种方法可以做到这一点,而不必使用
exit()
或类似的工具。

你说的“程序停止”是什么意思?你的意思是你想引发一个异常吗?嗯,你可以做
raisevalueerror,“Error message”
。如果你需要更多的信息,你必须更具体地说明你想要什么。您没有提供足够的信息,无法知道什么样的异常是合适的。请将
返回“错误消息”
更改为
引发异常(“错误消息”)
def function_c():
    return 'error message'

def function_b():
    if some_condition:
        return function_c()
    return var

def function_a():
    var_x = function_b(var_y)
    return Function(val_x)