协慌网

登录 贡献 社区

如何使用 Python 获取系统主机名?

我正在为本地网络编写聊天程序。我希望能够使用 Python 识别计算机并获取用户设置的计算机名称。

答案

使用socket及其gethostname()功能。这将获取运行 Python 解释器的计算机hostname

import socket
print(socket.gethostname())

这两个都是可移植的:

import platform
platform.node()

import socket
socket.gethostname()

HOSTHOSTNAME环境变量的任何解决方案都是不可移植的。即使它在您的系统上运行时也可以运行,但是在诸如 cron 之类的特殊环境中运行时,它可能也无法运行。

无论如何,您可能都将加载 os 模块,因此另一个建议是:

import os
myhost = os.uname()[1]