我对编码很陌生。我写了一段简单的代码,它将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): ")
答案 0 :(得分:5)
你的功能当然 正在运作。您遇到的问题是您从get_stat()
返回一个值(这是return
语句所做的),但您实际上从未说过应该打印此值。
我的猜测是你要打印返回的值,在这种情况下你需要添加print语句:
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语句的作用以及如何从中获取值。