簡體   English   中英

在python.exe中運行時,Python代碼不同

[英]Python code different when run in python.exe

這是我的代碼:

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

為什么是這樣? 我忘記了什么嗎?

除了正確設置代碼格式外,您還應該將\\r更改為\\n

嘗試將您的代碼放入main()函數中,然后編寫:

if __name__ == '__main__':
    main()

我記得我在python api中讀到它在Windows上很重要。 但是我不記得為什么。 如果找到鏈接,我將在以后發布。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM