Simplify with built-in functions where possible. e.g.

change [x for x in y if x] to filter(None, y)
change [f(x) for x in y] to map(f, x)
change [x for x in y] to list(y)

These changes reduce source code size and complexity and produce some minor performance gains

svn: r14104
This commit is contained in:
Gerald Britton
2010-01-21 18:42:53 +00:00
parent fdfb1b48b0
commit 1f2469b09f
38 changed files with 81 additions and 101 deletions

View File

@@ -171,7 +171,7 @@ class DjangoInterface(object):
else:
return gen.lib.Name().serialize()
else:
return [self.pack_name(name) for name in names]
return map(self.pack_name, names)
def get_datamap(self, obj): # obj is source
datamap_dict = {}
@@ -202,10 +202,10 @@ class DjangoInterface(object):
obj_type = ContentType.objects.get_for_model(obj)
reporefs = models.RepositoryRef.objects.filter(object_id=obj.id,
object_type=obj_type)
return [self.pack_repository_ref(repo) for repo in reporefs]
return map(self.pack_repository_ref, reporefs)
def get_url_list(self, obj):
return [self.pack_url(url) for url in obj.url_set.all().order_by("order")]
return map(self.pack_url, obj.url_set.all().order_by("order"))
def get_address_list(self, obj, with_parish): # person or repository
addresses = obj.address_set.all().order_by("order")
@@ -257,12 +257,12 @@ class DjangoInterface(object):
def get_person_ref_list(self, person):
obj_type = ContentType.objects.get_for_model(person)
return [self.pack_person_ref(x) for x in
return map(self.pack_person_ref,
models.PersonRef.objects.filter(object_id=person.id,
object_type=obj_type)]
object_type=obj_type))
def get_lds_list(self, obj): # person or family
return [self.pack_lds(lds) for lds in obj.lds_set.all().order_by("order")]
return map(self.pack_lds, obj.lds_set.all().order_by("order"))
def get_place_handle(self, obj): # obj is event
if obj.place:

View File

@@ -162,7 +162,7 @@ class Table(object):
self.table.columns(*args)
def row(self, *args):
self.table.row(*[nbsp(arg) for arg in args])
self.table.row(*map(nbsp, args))
def link(self, object_type_name, handle):
self.table.set_link_col((object_type_name, handle))