0

这是我的代码:

import win32api
import wmi

def username_func():
    uname = win32api.GetUserName()
    print "Username is:" ,uname, "\r "

def disk_func():
    c = wmi.WMI()
    for disk in c.Win32_LogicalDisk (DriveType=3):
            print disk.Caption, "%0.1f%% vrij \r" % (100.0 * long (disk.FreeSpace) / long     (disk.Size)),long (disk.FreeSpace) / long (1073741824),"gb van",long (disk.Size) / long     (1073741824),"gb"
            print

def main():
    username_func()
    disk_func()

main()

raw_input("Press Enter to continue...")

当我运行这是 pyscripter 时,它给了我这个输出:

Username is: ****** 

C: 66.7% vrij 
79 gb van 119 gb

D: 21.9% vrij 
130 gb van 596 gb

当我双击 python.py 时,我得到不同的输出:

sername is: *****
79 gb van 119 gb

130 gb van 596 gb

为什么是这样?我忘记了什么吗?

4

2 回答 2

3

除了正确格式化代码之外,您还应该将您的代码更改\r\n

于 2012-06-25T09:37:11.233 回答
0

尝试将您的代码放在 main() 函数中,然后编写:

if __name__ == '__main__':
    main()

我记得我在 python api 中读到它在 Windows 上很重要。但我不记得为什么。如果我找到链接,我会稍后发布。

于 2012-06-25T09:42:10.450 回答