Como percorrer todos os pacotes usando python-apt

Como percorrer todos os pacotes usando python-apt

eu quero implementar um código python que imprima todos os pacotes usando python-apt no Ubuntu. Eu pesquisei sobre isso, olhei a documentação do python apt no link,https://apt.alioth.debian.org/python-apt-doc/

No entanto, não consegui encontrar o que quero. Você sabe como percorrer todos os pacotes? Se você me perguntar por que quero fazer isso, é porque quero percorrer todos os pacotes. Posso chegar à seção de um pacote. Se eu conseguir percorrer todos os pacotes, agruparei os pacotes olhando a seção de pacotes. Como você sabe, são mais de cinquenta seções de pacotes conforme indicado no link,https://packages.debian.org/stable/

Examinarei a seção de cada pacote e depois colocarei esse pacote em alguma lista. Por exemplo, se a seção de um pacote for Jogos, colocarei esse pacote na lista Jogos, etc.

Como posso percorrer e imprimir todos os pacotes?

desde já, obrigado

Responder1

Você precisa usarapt.cacheeapt.package. Adaptando o exemplo dado paraapt.package:

#!/usr/bin/env python2

import apt
cache = apt.Cache()
Games = [pkg for pkg in cache if pkg.section.endswith("/games")]
print("\n".join(map(lambda x: x.name, Games[1:10])))

cacheé como um objeto de dicionário, com nomes de pacotes (+ um rótulo de arquitetura opcional) como chaves. Você pode usar o cache.keys()método para obter todas as chaves.

Alguns exemplos de saída:

funnyboat
berusky2
torcs:i386
glaurung:i386
jigzo-data
balazar3-common
val-and-rick
openyahtzee:i386
mupen64plus-ui-console

informação relacionada