On 01/05/2014 10:18 AM, eneskri...@gmail.com wrote:
So, I'm having this radio button issue in tkinter:
First I assign the IntVar:
var = []
while i < self.something:
     var.append(IntVar())
     i += 2
Later on I use them, but I get this error:
for r in var:
     helper = var[r].get()
     self.something_else[helper] += 1
Then, this happens:
Traceback (most recent call last):
   File "F:\Portable Python 3.2.5.1\App\lib\tkinter\__init__.py", line 1456, in 
__call__
     return self.func(*args)
   File "----(Not giving this)", line 26, in submit_data
     helper = var[r].get()
TypeError: list indices must be integers, not IntVar
I'm willing to give additional info. Thank you in advance.


These two lines

for r in var:
    helper = var[r].get()

are being redundant.

The loop returns elements from the list (one-by-one). Also var[r] attempts to return an element from the list (indexed by r -- expected to be an integer).

Either of these remove the redundancy (but the first is more Pythonic)

  for r in var:
      helper = r.get()

or

  for i in range(len(var)):
     helper = var[i].get()

Gary Herron

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to