Function for assigning variables
Here's something that I've wished for a number of times so far: the ability to create a function (taking X) that creates X variables, even if they are all initialized to the same value. For example, f(3) would assign var1 = 0 , var2 = 0 , and var3 = 0 .
My program runs an experiment, and I'd love for the number of sections to be a variable that I could change at will (so I could expand it later if I wanted). Each section requires a certain number of variables for keeping track of things like how many problems the participant solved correctly. So you can see how useful the above would be to me...
Anyway, I assume it can't be done. But are there other ways to deal with my problem? I'd love to find out.
aot
Junior Poster in Training
83 posts since Feb 2007
Reputation Points: 10
Solved Threads: 1
Hey ... weird... I thought I had posted here earlier. Anyways, assuming that you are representing each section with a single integer, you might do well to simply maintain a list of sessions. In that case, your function would be
def f(x):
return [0]*x
If it turns out you need more info for your sections, you could create a Section() class:
class Section(object):
def __init__(self):
self.score = 0
self.name = ""
... # etc.
def f(x):
return [Section() for i in range(x)]
Now, f(x) returns x number of Section objects ready for use.
Jeff
jrcagle
Practically a Master Poster
608 posts since Jul 2006
Reputation Points: 92
Solved Threads: 156
Oh, sorry ... wasn't complaining about your post, which was great. I was just surprised to find myself reading the same question that I thought I'd replied to earlier... :lol:
jrcagle
Practically a Master Poster
608 posts since Jul 2006
Reputation Points: 92
Solved Threads: 156
Wow, a big thanks to all of you! Now to compile this information in the ol' brain and see if I can improve my experiment program...
I still honestly have a lot to learn about structuring my whole program. Right now I have a couple of different classes based on the type of page that the participant will be viewing (an instructions page, a trial page, or a questionnaire page), and I've got a multiway branch set up that directs them to the appropriate type based on what section of the experiment they're in... and the section is just an int that increments as they progress along. I suppose it's not too bad overall, for a first try anyway.
Anyway, my plan right now is to use solsteel's suggestion of the exec function in order to assign some features to the different trial blocks. We'll see how well it goes.
aot
Junior Poster in Training
83 posts since Feb 2007
Reputation Points: 10
Solved Threads: 1