3

我尝试在 Windows 上的 Eclipse 中运行以下 python 代码,但它显示错误说pwd不是有效的导入:

import os
import pwd
import socket
pinfo=pwd.getpwuid(os.getuid())

我可以if not win32用来绕过这部分,所以当它在 Windows 上运行时它只是跳转并且不会产生错误?

if not win32:
   import os
   import pwd
   import socket
   pinfo=pwd.getpwuid(os.getuid())
else:
   return

如果是,我需要做什么才能使用它,win32因为它也显示错误提示undefined variable

4

4 回答 4

3

您应该为此使用sys.platform

if sys.platform != 'win32':
    ...
于 2012-06-26T20:38:14.703 回答
2
if sys.platform != 'win32':
 ...
于 2012-06-26T20:38:49.683 回答
2

我想这两个问题可能对你的问题有答案。

是否有一种可移植的方式来获取 Python 中的当前用户名?

pwd.getpwnam(username).pw_dir 的 Windows 等效项是什么?

于 2012-06-26T20:40:13.963 回答
1

您可以使用检查操作系统

import os
if os.name != 'nt':
   # do something
于 2012-06-26T20:37:08.080 回答