Python 查找可用端口以运行服务器

Python 查找可用端口以运行服务器,python,server,Python,Server,python中最好的方法是什么,比如运行jupyter notebook,换句话说,如果默认端口不可用,在某个可用端口上运行服务器(例如,使用http.server)?如果启动服务器失败,只捕获错误并尝试其他端口直到它工作,这是常见的吗?您可以使用端口0-这会将服务器绑定到内核当前已知可用的某个端口。然而,这就产生了服务发现的问题——您的客户端如何知道服务器正在侦听哪个端口号?如果只有您,那应该没什么大不了的。作为应用程序的开发人员,我如何找到它最终使用的端口?您可以使用s.getsocknam

python中最好的方法是什么,比如运行
jupyter notebook
,换句话说,如果默认端口不可用,在某个可用端口上运行服务器(例如,使用
http.server
)?如果启动服务器失败,只捕获错误并尝试其他端口直到它工作,这是常见的吗?

您可以使用端口0-这会将服务器绑定到内核当前已知可用的某个端口。然而,这就产生了服务发现的问题——您的客户端如何知道服务器正在侦听哪个端口号?如果只有您,那应该没什么大不了的。

作为应用程序的开发人员,我如何找到它最终使用的端口?您可以使用
s.getsockname()[1]
获取套接字
s
使用的当前端口号。您需要使用一些http.server方法来获取套接字。