[英]Python code different when run in python.exe
This is my code: 这是我的代码:
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...")
when i run this is pyscripter it gives me this output: 当我运行这是pyscripter时,它给了我这个输出:
Username is: ******
C: 66.7% vrij
79 gb van 119 gb
D: 21.9% vrij
130 gb van 596 gb
when i double click the python.py i get a different output: 当我双击python.py时,我得到一个不同的输出:
sername is: *****
79 gb van 119 gb
130 gb van 596 gb
why is this? 为什么是这样? am i forgetting something? 我忘记了什么吗?
除了正确设置代码格式外,您还应该将\\r
更改为\\n
Try to put your code in a main() function and then write: 尝试将您的代码放入main()函数中,然后编写:
if __name__ == '__main__':
main()
I remember I read in python api that it's important on Windows. 我记得我在python api中读到它在Windows上很重要。 But I don't remember why. 但是我不记得为什么。 If I find the link I'll post it later. 如果找到链接,我将在以后发布。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.