Skip to main content
 首页 » 编程设计

python之为什么我的 Python 函数不执行

2025年05月04日20shangdawei

我对编码很陌生。我写了一段简单的代码,它将 URL 作为输入,加载 URL 并将该 URL 的状态代码放入变量中。我把它放在一个函数中。但是当我运行代码时,我没有得到任何错误,但该函数不会运行。似乎口译员刚刚飞过我的职能。我知道我有一些简单的错误,但无论我搜索多少,我都无法修复它。请帮助我理解。哦,代码不完整。但该功能应该运行。

import urllib.request, click, threading 
 
url = input("Enter domain name >> \n") 
 
def get_stat(): 
    status = urllib.request.urlopen("http://"+url).getcode() 
    if status == 200: 
        return "Site loads normally!\nHost Said: '%s'!" %(str(status)) 
    else: 
        return "Site Needs To Be Checked!\nHost Said: '%s'!" %(str(status)) 
get_stat() 
 
if click.confirm("Would you like to set a uptime watch?"): 
    click.echo("You just confirmed something!!") 
    count = input("Enter the number of times you wish your site to be checked: ") 
    interval = input("Enter the time interval for status requests (Time is in minutes): ") 

请您参考如下方法:

您的功能肯定正在工作。您面临的问题是您从 get_stat() 返回一个值(这是 return 语句所做的)但您从未真正说过应该打印该值。

我猜你想打印返回的值,在这种情况下你需要添加打印语句:

print(get_stat()) 

或者您可以将值存储为变量:

a = get_stat() 
print(a) 

如 quamrana's 中所述下面的评论虽然以下方法被认为是不好的做法,但您可以将 print() 语句放在您的函数中以进行调试并在以后替换它:

if status == 200: 
    print("Site loads normally!\nHost Said: '%s'!" %(str(status))) 
else: 
    print("Site Needs To Be Checked!\nHost Said: '%s'!" %(str(status))) 

这将证明函数确实在执行。

This post可能会帮助您更好地理解 return 语句的作用以及如何从中获取值。