总是$machinename$
大写?我想根据这个返回值编写一些代码,但是 Pythonsocket.gethostname()
返回“Mark-PC”而$machinename$
返回“MARK-PC”。如果是这样,我将只是.upper()
主机名,但我应该这样做似乎有点愚蠢。为什么不一致?
问问题
259 次
1 回答
3
不同之处在于 $machinename$ 返回 NetBIOS 名称,而 socket.gethostname() 返回主机名。尽管 Windows 通常将它们命名相同,但它们是不同的东西。如果您在 Windows 系统设置中更改主 DNS 后缀,主机名 API 在技术上可能会返回不同的结果。(此时它将是机器名称+后缀)
这是系统级别的,并不特定于 python,如等效的 C# API 所示:
System.Net.Dns.GetHostName() --> method would return Mark-PC
Environment.MachineName --> property would return MARK-PC
于 2011-02-27T06:37:57.920 回答