Something like the getattr() trick.

Ayaz Ahmed Khan ayaz at dev.slash.null
Sat Feb 10 15:34:03 EST 2007


I'm working with the following class heirarchy (I've snipped out the code
from the classes):

class Vuln:
	def __init__(self, url):
		pass
	
	def _parse(self):
		pass

	def get_link(self):
		pass

class VulnInfo(Vuln):
	pass

class VulnDiscuss(Vuln):
	pass

def main(url):
	vuln_class = ['Info', 'Discuss']
	vuln = Vuln(url)
	vuln._parse()
	for link in vuln.get_link():
	        i = VulnInfo(link)
	        i._parse()
	        d = VulnDiscuss(link)
	        d._parse()
        

Is there a way to get references to VulnInfo and VulnDiscuss objects using
something like the getattr trick? For example, something like:

	for _class in vuln_class:
		class_obj = getattr('Vuln%s' % (_class,) ..)
		a = class_obj(link)
		a._parse()

getattr() takes an object as its first argument. I can't seem to figure
out how to make it work here.

-- 
Ayaz Ahmed Khan

A witty saying proves nothing, but saying something pointless gets
people's attention.



More information about the Python-list mailing list