python - Populate Option Menu from a variable -


the following part of code. have function scans com ports , pulls available com ports connected. want list these com ports different selections in option menu. when run code, option available com2 com4, there simple way separate these 2 different options? not looking how populate option menu list, how convert data have list. thanks.

    global model     model = stringvar(master)     self.option = stringvar()     w = optionmenu(master, self.option, ()) 

from scan of com ports, print statement returns ['com2', 'com4'].

    print(serial_ports())     global com     com = list(serial_ports())     self.option.set(com) 

below full code scanning com port.

    def serial_ports():         """ lists serial port names              :raises environmenterror:                 on unsupported or unknown platforms             :returns:                 list of serial ports available on system         """         if sys.platform.startswith('win'):             ports = ['com%s' % (i + 1) in range(256)]         elif sys.platform.startswith('linux') or sys.platform.startswith('cygwin'):             # excludes current terminal "/dev/tty"             ports = glob.glob('/dev/tty[a-za-z]*')         elif sys.platform.startswith('darwin'):             ports = glob.glob('/dev/tty.*')         else:             raise environmenterror('unsupported platform')          result = []         port in ports:             try:                 s = serial.serial(port)                 s.close()                 result.append(port)             except (oserror, serial.serialexception):                 pass         return result      if __name__ == '__main__':         print(serial_ports())         global com         com = serial_ports()          self.option.set(com) 

this proves have said works:

from tkinter import *  root = tk()  var = stringvar() array = ["com2", "com4"] var.set(array[0])  optionmenu(root, var, *array).pack()  root.mainloop() 

please read this:

https://stackoverflow.com/a/18213202/4528269


Comments

Popular posts from this blog

neo4j - finding mutual friends in a cypher statement starting with three or more persons -

php - How to remove letter in front of the word laravel -

minify - Minimizing css files -