Python if/else语句有问题
我相信这个问题的答案很简单,但我一辈子都想不出这个答案。我有这个代码,如果我只有if语句,它工作得很好,但是当我添加else时,它就停止工作了。我到底做错了什么Python if/else语句有问题,python,Python,我相信这个问题的答案很简单,但我一辈子都想不出这个答案。我有这个代码,如果我只有if语句,它工作得很好,但是当我添加else时,它就停止工作了。我到底做错了什么 import wmi import win32api c = wmi.WMI() process_watcher = c.Win32_Process.watch_for("creation") while True: new_process = process_watcher() if(new_process.Capti
import wmi
import win32api
c = wmi.WMI()
process_watcher = c.Win32_Process.watch_for("creation")
while True:
new_process = process_watcher()
if(new_process.Caption == "java.exe"):
win32api.MessageBox(0, 'Java has started, did you mean for this to happen?', 'Warning', 0x00001000)
else:
win32api.MessageBox(0, 'Not Java', 'Warning', 0x00001000)
您正在使用制表符进行缩进,我认为您有一个缩进错误。
使用
python-tt scriptname.py
进行检测。您正在使用制表符进行缩进,我认为您有一个缩进错误。
使用
python-tt scriptname.py
来检测。什么是“停止工作”意思?它只是“停止工作”?还是有错误消息?如果是,请在这里分享。什么是“停止工作”的意思?它只是“停止工作”?还是有错误消息?如果是这样,请在此处共享。你是对的……我对制表符的使用不一致,但我看不出有什么问题。@user1419579:将编辑器配置为使用空格进行缩进,而不是制表符。重新缩进每一行(必要时手动缩进)。第一行win32api
上有一个制表符,但由于它是复制粘贴,而不是原始文件,所以我无法判断这是否是您唯一的问题。@user1419579,空格在Python中定义了块结构。但制表符字符的宽度尚未定义,因此组合空格和制表符的代码在其块结构中可能存在歧义。使用一个或另一个--最好是空格。你是对的……我对制表符的使用不一致,但我看不出有什么错。@user1419579:将编辑器配置为使用空格进行缩进,而不是制表符。重新缩进每一行(必要时手动缩进)。第一行win32api
上有一个制表符,但由于它是复制粘贴,而不是原始文件,所以我无法判断这是否是您唯一的问题。@user1419579,空格在Python中定义了块结构。但制表符字符的宽度尚未定义,因此组合空格和制表符的代码在其块结构中可能存在歧义。使用一个或另一个,最好是空格。