这个if语句在python中给我留下了一个无法访问的错误

这个if语句在python中给我留下了一个无法访问的错误,python,bayesian,Python,Bayesian,我不知道为什么这个if语句会给我这个错误,一开始我认为我的python版本可能有问题,儿子,我卸载它,然后再次安装,这是我的代码 def calc__bayes(优先级A、概率B、概率B): 返回(上一个*下一个/下一个) 如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu': 癌症概率=1/100000 癌症概率=1 新托马岛-达多岛-无癌症=10/99999 概率无癌=1-概率癌 肿瘤概率=(肿瘤概率*肿瘤概率)+(肿瘤概率*非肿瘤概率) 癌症概率=calc_

我不知道为什么这个if语句会给我这个错误,一开始我认为我的python版本可能有问题,儿子,我卸载它,然后再次安装,这是我的代码

def calc__bayes(优先级A、概率B、概率B):
返回(上一个*下一个/下一个)
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
癌症概率=1/100000
癌症概率=1
新托马岛-达多岛-无癌症=10/99999
概率无癌=1-概率癌
肿瘤概率=(肿瘤概率*肿瘤概率)+(肿瘤概率*非肿瘤概率)
癌症概率=calc_bayes(癌症概率,癌症概率,癌症概率)
印刷品(prob_cancer_dado_sintoma)

正如在注释中一样,您不能在定义中写入_name=\u main。相反,我认为你想这样做

def calc_bayes(prior_A, prob_B_dado_A, prob_B):
    return (prior_A * prob_B_dado_A) / prob_B
if __name__ == '__main__':
        prob_cancer = 1 / 100000
        prob_sintoma_dado_cancer = 1
        prob_sintoma_dado_no_cancer = 10 / 99999
        prob_no_cancer = 1 - prob_cancer
        prob_sintoma = (prob_sintoma_dado_cancer * prob_cancer) + (prob_sintoma_dado_no_cancer * prob_cancer)
        prob_cancer_dado_sintoma = calc_bayes (prob_cancer, prob_sintoma_dado_cancer, prob_sintoma)
        print(prob_cancer_dado_sintoma)

你在一个函数中,所以你不能在main中…你在一个
return
后面有一个
if
语句。执行
return
后没有直接的代码。也许你想让它在功能之外?请阅读并注意为什么缩进在python中很重要。不,我们建议您阅读教程。感谢您的帮助,我还是一名初级开发人员。我会看的Chase你是对的我有身份识别问题我可以解决。但我会阅读教程,再次感谢你。