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


当前回答

Socket.gethostname()可以做什么

其他回答

你可能会加载操作系统模块,所以另一个建议是:

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

这两个都是非常可移植的:

import platform
platform.node()

import socket
socket.gethostname()

任何使用HOST或HOSTNAME环境变量的解决方案都不能移植。即使它在您的系统上运行时可以工作,但在cron等特殊环境中运行时可能无法工作。

你必须执行这行代码

sock_name = socket.gethostname()

然后你可以使用名称来查找地址:

print(socket.gethostbyname(sock_name))

使用套接字及其gethostname()功能。这将得到运行Python解释器的计算机的主机名:

import socket
print(socket.gethostname())

如果我没猜错,你是在找插座。gethostname功能:

>> import socket
>> socket.gethostname()
'terminus'