La solution ci-dessus ne m'a pas tout à fait permis car j'utilise également un formateur pour ajouter un nom et un nom de niveau lors de la journalisation. Cela a l'air un peu désordonné:
__main__    : DEBUG   : ['aaaaaaaaaaaaaaaaaaaa',
'bbbbbbbbbbbbbbbbbbbb',
'cccccccccccccccccccc',
'dddddddddddddddddddd']
__main__    : DEBUG   : Some other logging text
Il existe peut-être une solution plus élégante, mais celle-ci:
for line in pprint.pformat(ds).split('\n'):
    logging.debug(line)
produit quelque chose d'un peu plus agréable:
__main__    : DEBUG   : ['aaaaaaaaaaaaaaaaaaaa',
__main__    : DEBUG   :  'bbbbbbbbbbbbbbbbbbbb',
__main__    : DEBUG   :  'cccccccccccccccccccc',
__main__    : DEBUG   :  'dddddddddddddddddddd']
__main__    : DEBUG   : Some other logging text
     
              
pprint( {}, stream ), mais j'ai trouvé cela plutôt gênant. J'aurais pensé que quelque chose comme çaspprintaurait pu être plus agréable quepformat(comme dansc).