diff --git a/DemoPrograms/Demo_Button_States.py b/DemoPrograms/Demo_Button_States.py index 6917ab28..6592f72a 100644 --- a/DemoPrograms/Demo_Button_States.py +++ b/DemoPrograms/Demo_Button_States.py @@ -46,6 +46,6 @@ while True: [window.FindElement(key).Update(disabled=value) for key,value in {'_Start_':False, '_Stop_':True, '_Reset_':True, '_Submit_':True}.items()] recording = False have_data = False - elif event is '_Submit_' and have_data: + elif event == '_Submit_' and have_data: [window.FindElement(key).Update(disabled=value) for key,value in {'_Start_':False, '_Stop_':True, '_Reset_':True, '_Submit_':False}.items()] recording = False diff --git a/DemoPrograms/Demo_Canvas.py b/DemoPrograms/Demo_Canvas.py index a310842c..d54ce229 100644 --- a/DemoPrograms/Demo_Canvas.py +++ b/DemoPrograms/Demo_Canvas.py @@ -18,7 +18,5 @@ while True: event, values = window.Read() if event is None: break - if event is 'Blue': - window.FindElement('canvas').TKCanvas.itemconfig(cir, fill = "Blue") - elif event is 'Red': - window.FindElement('canvas').TKCanvas.itemconfig(cir, fill = "Red") + if event in ('Blue', 'Red'): + window.FindElement('canvas').TKCanvas.itemconfig(cir, fill=event) diff --git a/DemoPrograms/Demo_Chat.py b/DemoPrograms/Demo_Chat.py index 0b2e71fe..c4ab0dd3 100644 --- a/DemoPrograms/Demo_Chat.py +++ b/DemoPrograms/Demo_Chat.py @@ -11,7 +11,7 @@ A chat window. Add call to your send-routine, print the response and you're don To see this program RUN on the web go here: https://repl.it/@PySimpleGUI/Chat-Application-Demo -Note that the size of the display on repl.it is smaller than most, so the sizes of the +Note that the size of the display on repl.it is smaller than most, so the sizes of the Multiline and Output text areas were reduced in the online version. Nothing else was changed ''' @@ -31,7 +31,7 @@ window = sg.Window('Chat window', # ---===--- Loop taking in user input and using it --- # while True: event, value = window.Read() - if event is 'SEND': + if event == 'SEND': query = value['query'].rstrip() # EXECUTE YOUR COMMAND HERE print('The command you entered was {}'.format(query)) diff --git a/DemoPrograms/Demo_Chat_With_History.py b/DemoPrograms/Demo_Chat_With_History.py index e30aeff9..c7431806 100644 --- a/DemoPrograms/Demo_Chat_With_History.py +++ b/DemoPrograms/Demo_Chat_With_History.py @@ -33,7 +33,7 @@ def ChatBotWithHistory(): history_offset = 0 while True: (event, value) = window.Read() - if event is 'SEND': + if event == 'SEND': query = value['query'].rstrip() # EXECUTE YOUR COMMAND HERE print('The command you entered was {}'.format(query)) @@ -41,7 +41,7 @@ def ChatBotWithHistory(): history_offset = len(command_history)-1 window.FindElement('query').Update('') # manually clear input because keyboard events blocks clear window.FindElement('history').Update('\n'.join(command_history[-3:])) - elif event is None or event is 'EXIT': # quit if exit event or X + elif event in (None, 'EXIT'): # quit if exit event or X break elif 'Up' in event and len(command_history): command = command_history[history_offset] diff --git a/DemoPrograms/Demo_Chatterbot.py b/DemoPrograms/Demo_Chatterbot.py index 6a5c1964..a80d08c3 100644 --- a/DemoPrograms/Demo_Chatterbot.py +++ b/DemoPrograms/Demo_Chatterbot.py @@ -12,7 +12,7 @@ import chatterbot.utils ''' Demo_Chatterbot.py A GUI wrapped arouind the Chatterbot package. -The GUI is used to show progress bars during the training process and +The GUI is used to show progress bars during the training process and to collect user input that is sent to the chatbot. The reply is displayed in the GUI window ''' @@ -67,7 +67,7 @@ window = sg.Window('Chat Window', auto_size_text=True, default_element_size=(30, # ---===--- Loop taking in user input and using it to query HowDoI web oracle --- # while True: event, (value,) = window.Read() - if event is not 'SEND': + if event != 'SEND': break string = value.rstrip() print(' '+string) diff --git a/DemoPrograms/Demo_Chatterbot_With_TTS.py b/DemoPrograms/Demo_Chatterbot_With_TTS.py index 3872ffb8..565c89c1 100644 --- a/DemoPrograms/Demo_Chatterbot_With_TTS.py +++ b/DemoPrograms/Demo_Chatterbot_With_TTS.py @@ -16,7 +16,7 @@ import os ''' Demo_Chatterbot.py A GUI wrapped arouind the Chatterbot package. -The GUI is used to show progress bars during the training process and +The GUI is used to show progress bars during the training process and to collect user input that is sent to the chatbot. The reply is displayed in the GUI window ''' @@ -87,7 +87,7 @@ window = sg.Window('Chat Window', auto_size_text=True, default_element_size=(30, # ---===--- Loop taking in user input and using it to query HowDoI web oracle --- # while True: event, (value,) = window.Read() - if event is not 'SEND': + if event != 'SEND': break string = value.rstrip() print(' '+string) diff --git a/DemoPrograms/Demo_Desktop_Widget_Timer.py b/DemoPrograms/Demo_Desktop_Widget_Timer.py index e5a06939..5d80653f 100644 --- a/DemoPrograms/Demo_Desktop_Widget_Timer.py +++ b/DemoPrograms/Demo_Desktop_Widget_Timer.py @@ -8,13 +8,13 @@ import time """ Timer Desktop Widget Creates a floating timer that is always on top of other windows You move it by grabbing anywhere on the window Good example of how to do a non-blocking, polling program using SimpleGUI Can be used to poll hardware when running on a Pi - + While the timer ticks are being generated by PySimpleGUI's "timeout" mechanism, the actual value of the timer that is displayed comes from the system timer, time.time(). This guarantees an accurate time value is displayed regardless of the accuracy of the PySimpleGUI timer tick. If this design were not used, then the time value displayed would slowly drift by the amount of time - it takes to execute the PySimpleGUI read and update calls (not good!) - + it takes to execute the PySimpleGUI read and update calls (not good!) + NOTE - you will get a warning message printed when you exit using exit button. It will look something like: invalid command name \"1616802625480StopMove\" """ @@ -46,9 +46,9 @@ while (True): if event == 'button': event = window.FindElement(event).GetText() # --------- Do Button Operations -------- - if event is None or event == 'Exit': # ALWAYS give a way out of program + if event in (None, 'Exit'): # ALWAYS give a way out of program break - if event is 'Reset': + if event == 'Reset': start_time = int(round(time.time() * 100)) current_time = 0 paused_time = start_time diff --git a/DemoPrograms/Demo_EXE_Maker.py b/DemoPrograms/Demo_EXE_Maker.py index b1e79220..9d751c6f 100644 --- a/DemoPrograms/Demo_EXE_Maker.py +++ b/DemoPrograms/Demo_EXE_Maker.py @@ -25,7 +25,7 @@ def Launcher(): # ---===--- Loop taking in user input --- # while True: (button, values) = window.Read() - if button is 'Quit' or button is None: + if button in ('Quit', None): break # exit button clicked source_file = values['_sourcefile_'] @@ -40,7 +40,7 @@ def Launcher(): file_to_remove = os.path.join(source_path, source_filename[:-3]+'.spec') command_line = 'pyinstaller -wF "{}" {} {} {} {}'.format(source_file, icon_option, workpath_option, dispath_option, specpath_option) - if button is 'Make EXE': + if button == 'Make EXE': try: print(command_line) print('Making EXE... this will take a while.. the program has NOT locked up...') diff --git a/DemoPrograms/Demo_Fill_Form.py b/DemoPrograms/Demo_Fill_Form.py index 2aa3a6f5..4636a037 100644 --- a/DemoPrograms/Demo_Fill_Form.py +++ b/DemoPrograms/Demo_Fill_Form.py @@ -48,15 +48,15 @@ def Everything(): while True: event, values = window.Read() - if event is 'SaveSettings': + if event == 'SaveSettings': filename = sg.PopupGetFile('Save Settings', save_as=True, no_window=True) window.SaveToDisk(filename) # save(values) - elif event is 'LoadSettings': + elif event == 'LoadSettings': filename = sg.PopupGetFile('Load Settings', no_window=True) window.LoadFromDisk(filename) # load(form) - elif event in ['Exit', None]: + elif event in ('Exit', None): break # window.CloseNonBlocking() diff --git a/DemoPrograms/Demo_Graph_Drawing.py b/DemoPrograms/Demo_Graph_Drawing.py index 232acff8..7bb286bc 100644 --- a/DemoPrograms/Demo_Graph_Drawing.py +++ b/DemoPrograms/Demo_Graph_Drawing.py @@ -21,11 +21,9 @@ while True: event, values = window.Read() if event is None: break - if event is 'Blue': - graph.TKCanvas.itemconfig(circle, fill = "Blue") - elif event is 'Red': - graph.TKCanvas.itemconfig(circle, fill = "Red") - elif event is 'Move': + if event in ('Blue', 'Red'): + graph.TKCanvas.itemconfig(circle, fill=event) + elif event == 'Move': graph.MoveFigure(point, 10,10) graph.MoveFigure(circle, 10,10) graph.MoveFigure(oval, 10,10) diff --git a/DemoPrograms/Demo_Matplotlib_Animated.py b/DemoPrograms/Demo_Matplotlib_Animated.py index 20db3496..6063a5ee 100644 --- a/DemoPrograms/Demo_Matplotlib_Animated.py +++ b/DemoPrograms/Demo_Matplotlib_Animated.py @@ -37,7 +37,7 @@ def main(): dpts = [randint(0, 10) for x in range(10000)] for i in range(len(dpts)): event, values = window.Read(timeout=10) - if event is 'Exit' or event is None: + if event in ('Exit', None): exit(69) slider_elem.Update(i) diff --git a/DemoPrograms/Demo_Matplotlib_Animated_Scatter.py b/DemoPrograms/Demo_Matplotlib_Animated_Scatter.py index 5d87bbd1..b57df505 100644 --- a/DemoPrograms/Demo_Matplotlib_Animated_Scatter.py +++ b/DemoPrograms/Demo_Matplotlib_Animated_Scatter.py @@ -27,7 +27,7 @@ def main(): while True: event, values = window.Read(timeout=10) - if event is 'Exit' or event is None: + if event in ('Exit', None): exit(69) def PyplotScatterWithLegend(): diff --git a/DemoPrograms/Demo_Matplotlib_Browser.py b/DemoPrograms/Demo_Matplotlib_Browser.py index ed927c96..00b7ca5a 100644 --- a/DemoPrograms/Demo_Matplotlib_Browser.py +++ b/DemoPrograms/Demo_Matplotlib_Browser.py @@ -889,7 +889,7 @@ while True: event, values = window.Read() print(event) # show it all again and get buttons - if event is None or event is 'Exit': + if event in (None, 'Exit'): break try: diff --git a/DemoPrograms/Demo_Matplotlib_Browser_Paned.py b/DemoPrograms/Demo_Matplotlib_Browser_Paned.py index 756857fb..3be1b576 100644 --- a/DemoPrograms/Demo_Matplotlib_Browser_Paned.py +++ b/DemoPrograms/Demo_Matplotlib_Browser_Paned.py @@ -892,7 +892,7 @@ while True: event, values = window.Read() # print(event) # show it all again and get buttons - if event is None or event is 'Exit': + if event in (None, 'Exit'): break try: diff --git a/DemoPrograms/Demo_Matplotlib_Ping_Graph.py b/DemoPrograms/Demo_Matplotlib_Ping_Graph.py index bec2c4b0..b5687502 100644 --- a/DemoPrograms/Demo_Matplotlib_Ping_Graph.py +++ b/DemoPrograms/Demo_Matplotlib_Ping_Graph.py @@ -64,10 +64,10 @@ Note this file contains a copy of ping.py. It is contained in the first part of May 1, 2014 ----------- Little modifications by Mohammad Emami - - Added Python 3 support. For now this project will just support + - Added Python 3 support. For now this project will just support python 3.x - Tested with python 3.3 - - version was upped to 0.6 + - version was upped to 0.6 March 19, 2013 -------------- @@ -663,7 +663,7 @@ def main(): while True: event, values = window.Read(timeout=0) - if event is 'Exit' or event is None: + if event in ('Exit', None): exit(0) run_a_ping_and_graph() diff --git a/DemoPrograms/Demo_Matplotlib_Ping_Graph_Large.py b/DemoPrograms/Demo_Matplotlib_Ping_Graph_Large.py index d6be561a..38f7cf60 100644 --- a/DemoPrograms/Demo_Matplotlib_Ping_Graph_Large.py +++ b/DemoPrograms/Demo_Matplotlib_Ping_Graph_Large.py @@ -97,7 +97,7 @@ def main(): while True: event, values = window.Read(timeout=0) - if event is 'Exit' or event is None: + if event in ('Exit', None): break run_a_ping_and_graph() @@ -106,5 +106,3 @@ def main(): if __name__ == '__main__': main() - - diff --git a/DemoPrograms/Demo_NonBlocking_Form.py b/DemoPrograms/Demo_NonBlocking_Form.py index 5fe714c0..f3561f7c 100644 --- a/DemoPrograms/Demo_NonBlocking_Form.py +++ b/DemoPrograms/Demo_NonBlocking_Form.py @@ -28,7 +28,7 @@ def StatusOutputExample(): # This is the code that reads and updates your window event, values = window.Read(timeout=10) window.FindElement('output').Update('{:02d}:{:02d}.{:02d}'.format((i // 100) // 60, (i // 100) % 60, i % 100)) - if event == 'Quit' or event is None: + if event in ('Quit', None): break if event == 'LED On': print('Turning on the LED') @@ -63,9 +63,9 @@ def RemoteControlExample(): while (True): # This is the code that reads and updates your window event, values = window.Read(timeout=0, timeout_key='timeout') - if event is not 'timeout': + if event != 'timeout': print(event) - if event == 'Quit' or event is None: + if event in ('Quit', None): break window.Close() diff --git a/DemoPrograms/Demo_OpenCV.py b/DemoPrograms/Demo_OpenCV.py index 6e0db558..473f1ad5 100644 --- a/DemoPrograms/Demo_OpenCV.py +++ b/DemoPrograms/Demo_OpenCV.py @@ -41,7 +41,7 @@ def main(): i = 0 while vidFile.isOpened(): event, values = window.Read(timeout=0) - if event is 'Exit' or event is None: + if event in ('Exit', None): exit(69) ret, frame = vidFile.read() if not ret: # if out of data stop looping diff --git a/DemoPrograms/Demo_Pi_LEDs.py b/DemoPrograms/Demo_Pi_LEDs.py index a2e73b04..deda67fb 100644 --- a/DemoPrograms/Demo_Pi_LEDs.py +++ b/DemoPrograms/Demo_Pi_LEDs.py @@ -45,9 +45,9 @@ while True: if event is None: break - if event is 'Switch LED': + if event == 'Switch LED': window.FindElement('output').Update(SwitchLED()) - elif event is 'Flash LED': + elif event == 'Flash LED': window.FindElement('output').Update('LED is Flashing') window.Refresh() FlashLED() diff --git a/DemoPrograms/Demo_Script_Launcher.py b/DemoPrograms/Demo_Script_Launcher.py index bba71a51..7dff6a4f 100644 --- a/DemoPrograms/Demo_Script_Launcher.py +++ b/DemoPrograms/Demo_Script_Launcher.py @@ -62,7 +62,7 @@ def Launcher2(): print('Quickly launch your favorite programs using these shortcuts') print('Or copy files to your github folder. Or anything else you type on the command line') # copyfile(source, dest) - elif event is 'Run': + elif event == 'Run': for index, file in enumerate(values['demolist']): print('Launching %s'%file) window.Refresh() # make the print appear immediately diff --git a/DemoPrograms/Demo_Timer.py b/DemoPrograms/Demo_Timer.py index cff69f76..ec457091 100644 --- a/DemoPrograms/Demo_Timer.py +++ b/DemoPrograms/Demo_Timer.py @@ -27,9 +27,9 @@ def Timer(): if values is None or button == 'Exit': break - if button is 'Reset': + if button == 'Reset': i=0 - elif button is 'Pause': + elif button == 'Pause': paused = not paused if not paused: diff --git a/DemoPrograms/Demo_Youtube-dl_Frontend.py b/DemoPrograms/Demo_Youtube-dl_Frontend.py index 18363f85..71c0e469 100644 --- a/DemoPrograms/Demo_Youtube-dl_Frontend.py +++ b/DemoPrograms/Demo_Youtube-dl_Frontend.py @@ -7,7 +7,7 @@ else: import subprocess """ -Simple wrapper for youtube-dl.exe. +Simple wrapper for youtube-dl.exe. Paste the youtube link into the GUI. The GUI link is queried when you click Get List. Get List will populate the pulldown list with the language options available for the video. Choose the language to download and click Download @@ -45,9 +45,7 @@ def DownloadSubtitlesGUI(): print('Done') elif event == 'Download': - lang = values['lang'] - if lang is '': - lang = 'en' + lang = values['lang'] or 'en' print(f'Downloading subtitle for {lang}...') window.Refresh() command = [f'C:\\Python\\Anaconda3\\Scripts\\youtube-dl.exe --sub-lang {lang} --write-sub {link}',] diff --git a/HowDoI/PySimpleGUI-HowDoI.py b/HowDoI/PySimpleGUI-HowDoI.py index 8ae5fa79..7df8a04e 100644 --- a/HowDoI/PySimpleGUI-HowDoI.py +++ b/HowDoI/PySimpleGUI-HowDoI.py @@ -47,7 +47,7 @@ def HowDoI(): history_offset = 0 while True: (button, value) = window.Read() - if button is 'SEND': + if button == 'SEND': query = value['query'].rstrip() print(query) QueryHowDoI(query, value['Num Answers'], value['full text']) # send the string to HowDoI @@ -55,7 +55,7 @@ def HowDoI(): history_offset = len(command_history)-1 window.FindElement('query').Update('') # manually clear input because keyboard events blocks clear window.FindElement('history').Update('\n'.join(command_history[-3:])) - elif button is None or button is 'EXIT': # if exit button or closed using X + elif button in (None, 'EXIT'): # if exit button or closed using X break elif 'Up' in button and len(command_history): # scroll back in history command = command_history[history_offset] diff --git a/PySimpleGUIQt/Demo Programs/Qt_Demo_Desktop_Widget_Timer.py b/PySimpleGUIQt/Demo Programs/Qt_Demo_Desktop_Widget_Timer.py index 65d4bdc6..7f108c9c 100644 --- a/PySimpleGUIQt/Demo Programs/Qt_Demo_Desktop_Widget_Timer.py +++ b/PySimpleGUIQt/Demo Programs/Qt_Demo_Desktop_Widget_Timer.py @@ -14,7 +14,7 @@ import time of the timer that is displayed comes from the system timer, time.time(). This guarantees an accurate time value is displayed regardless of the accuracy of the PySimpleGUI timer tick. If this design were not used, then the time value displayed would slowly drift by the amount of time - it takes to execute the PySimpleGUI read and update calls (not good!) + it takes to execute the PySimpleGUI read and update calls (not good!) NOTE - you will get a warning message printed when you exit using exit button. It will look something like: invalid command name \"1616802625480StopMove\" @@ -48,9 +48,9 @@ while (True): if event == 'button': event = window.FindElement(event).GetText() # --------- Do Button Operations -------- - if event is None or event == 'Exit': # ALWAYS give a way out of program + if event in (None, 'Exit'): # ALWAYS give a way out of program break - if event is 'Reset': + if event == 'Reset': start_time = int(round(time.time() * 100)) current_time = 0 paused_time = start_time diff --git a/PySimpleGUIWeb/Demo Programs/Web_Timer.py b/PySimpleGUIWeb/Demo Programs/Web_Timer.py index 17c82450..b81203d7 100644 --- a/PySimpleGUIWeb/Demo Programs/Web_Timer.py +++ b/PySimpleGUIWeb/Demo Programs/Web_Timer.py @@ -30,9 +30,9 @@ while (True): if event == 'button': event = window.FindElement(event).GetText() # --------- Do Button Operations -------- - if event is None or event == 'Exit': # ALWAYS give a way out of program + if event in (None, 'Exit'): # ALWAYS give a way out of program break - if event is 'Reset': + if event == 'Reset': start_time = int(round(time.time() * 100)) current_time = 0 paused_time = start_time diff --git a/exemaker/pysimplegui-exemaker/pysimplegui-exemaker.py b/exemaker/pysimplegui-exemaker/pysimplegui-exemaker.py index 0f6c5178..1b246c38 100644 --- a/exemaker/pysimplegui-exemaker/pysimplegui-exemaker.py +++ b/exemaker/pysimplegui-exemaker/pysimplegui-exemaker.py @@ -25,7 +25,7 @@ def Launcher(): # ---===--- Loop taking in user input --- # while True: (button, values) = window.Read() - if button is 'Quit' or button is None: + if button in ('Quit', None): break # exit button clicked source_file = values['_sourcefile_'] @@ -40,7 +40,7 @@ def Launcher(): file_to_remove = os.path.join(source_path, source_filename[:-3]+'.spec') command_line = 'pyinstaller -wF "{}" {} {} {} {}'.format(source_file, icon_option, workpath_option, dispath_option, specpath_option) - if button is 'Make EXE': + if button == 'Make EXE': out='' try: print(command_line)