Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何以编程方式从apt获取包列表?_Python_Linux_Package_Apt_Dpkg - Fatal编程技术网

Python 如何以编程方式从apt获取包列表?

Python 如何以编程方式从apt获取包列表?,python,linux,package,apt,dpkg,Python,Linux,Package,Apt,Dpkg,如何使用Python/Python apt以编程方式获得与“dpkg——获取选择”相同的结果?显示前五个包: import apt_pkg apt_pkg.init() cache = apt_pkg.Cache() i = 5 for pkg in cache.Packages: print(pkg) i -= 1 if i < 0: break 导入apt\u软件包 apt_pkg.init() cache=apt_pkg.cache() i=5 对于缓存中的

如何使用Python/Python apt以编程方式获得与“dpkg——获取选择”相同的结果?

显示前五个包:

import apt_pkg

apt_pkg.init()
cache = apt_pkg.Cache()

i = 5
for pkg in cache.Packages:
  print(pkg)
  i -= 1
  if i < 0:
    break
导入apt\u软件包
apt_pkg.init()
cache=apt_pkg.cache()
i=5
对于缓存中的pkg。包:
印刷品(包装)
i-=1
如果i<0:
打破
输出(在我的Ubuntu系统上运行时):

$python apt\u package\u list.py
正在阅读软件包列表。。。多恩
构建依赖树
正在读取状态信息。。。多恩

在范围(0,5)上循环并调用cache.Packages.next()不是最好的做法吗?这对我不起作用。我得到:“AttributeError:'apt_pkg.PackageList'对象没有属性'next'”。dir()表示该对象上没有公开的成员。
$ python apt_package_list.py
Reading package lists... Done
Building dependency tree       
Reading state information... Done
<apt_pkg.Package object: name:'tesseract-ocr-epo' section: 'universe/graphics' id:48834>
<apt_pkg.Package object: name:'omninotify' section: '' id:48674>
<apt_pkg.Package object: name:'pipenightdreams' section: 'universe/games' id:43500>
<apt_pkg.Package object: name:'mumudvb' section: 'universe/misc' id:41568>
<apt_pkg.Package object: name:'mpg123-alsa' section: '' id:41448>
<apt_pkg.Package object: name:'tbb-examples' section: 'universe/doc' id:38301>