草庐IT

debian-sys-maint

全部标签

python - 在不修改sys.path或第三方软件包的情况下,在Python软件包中导入供应商依赖性

概要我正在为Anki(开源抽认卡程序)开发一系列附加组件。Anki附加组件以Python软件包的形式提供,其基本文件夹结构如下所示:anki_addons/addon_name_1/__init__.pyaddon_name_2/__init__.py基本应用程序将anki_addons附加到sys.path,然后将其与import导入每个add_on。我一直试图解决的问题是找到一种可靠的方式来将运送的包裹及其依赖项与我的附加组件一起使用,同时又不污染全局状态或不退回对供应商包裹的手动编辑。细节具体来说,给定这样的附加结构...addon_name_1/__init__.py_vend

python - 在不修改sys.path或第三方软件包的情况下,在Python软件包中导入供应商依赖性

概要我正在为Anki(开源抽认卡程序)开发一系列附加组件。Anki附加组件以Python软件包的形式提供,其基本文件夹结构如下所示:anki_addons/addon_name_1/__init__.pyaddon_name_2/__init__.py基本应用程序将anki_addons附加到sys.path,然后将其与import导入每个add_on。我一直试图解决的问题是找到一种可靠的方式来将运送的包裹及其依赖项与我的附加组件一起使用,同时又不污染全局状态或不退回对供应商包裹的手动编辑。细节具体来说,给定这样的附加结构...addon_name_1/__init__.py_vend

python - 检查是否从 Python 安装了 Debian 软件包

是否有一种优雅且更像Python的方法来检查软件包是否安装在Debian上?在bash脚本中,我会这样做:dpkg-spackagename|grepStatus关于在Python脚本中执行相同操作的建议? 最佳答案 这是一种pythonic方式:importaptcache=apt.Cache()ifcache['package-name'].is_installed:print"YESit'sinstalled"else:print"NOit'sNOTinstalled" 关于pyt

python - 检查是否从 Python 安装了 Debian 软件包

是否有一种优雅且更像Python的方法来检查软件包是否安装在Debian上?在bash脚本中,我会这样做:dpkg-spackagename|grepStatus关于在Python脚本中执行相同操作的建议? 最佳答案 这是一种pythonic方式:importaptcache=apt.Cache()ifcache['package-name'].is_installed:print"YESit'sinstalled"else:print"NOit'sNOTinstalled" 关于pyt

python sys.exit 无法正常工作

这个问题在这里已经有了答案:Whyis"except:pass"abadprogrammingpractice?(19个回答)关闭8年前。Python2.7.5(default,Feb262014,13:43:17)[GCC4.4.720120313(RedHat4.4.7-4)]onlinux2Type"help","copyright","credits"or"license"formoreinformation.>>>importsys>>>try:...sys.exit()...except:...print"inexcept"...inexcept>>>try:...sys.

python sys.exit 无法正常工作

这个问题在这里已经有了答案:Whyis"except:pass"abadprogrammingpractice?(19个回答)关闭8年前。Python2.7.5(default,Feb262014,13:43:17)[GCC4.4.720120313(RedHat4.4.7-4)]onlinux2Type"help","copyright","credits"or"license"formoreinformation.>>>importsys>>>try:...sys.exit()...except:...print"inexcept"...inexcept>>>try:...sys.

python - 如何将 python argparse 与 sys.argv 以外的参数一起使用?

有没有办法将argparse与任何字符串列表一起使用,而不是仅与sys.argv一起使用?这是我的问题:我有一个看起来像这样的程序:#Thisfileisprogram1.pyimportargparsedefmain(argv):parser=argparse.ArgumentParser()#Dosomeargumentparsingif__name__=='__main__':main(sys.argv)当直接从命令行调用这个程序时,这工作正常。但是,我有另一个python脚本,它使用不同的命令行参数运行该脚本的批处理版本,我使用的是这样的:importprogram1argum

python - 如何将 python argparse 与 sys.argv 以外的参数一起使用?

有没有办法将argparse与任何字符串列表一起使用,而不是仅与sys.argv一起使用?这是我的问题:我有一个看起来像这样的程序:#Thisfileisprogram1.pyimportargparsedefmain(argv):parser=argparse.ArgumentParser()#Dosomeargumentparsingif__name__=='__main__':main(sys.argv)当直接从命令行调用这个程序时,这工作正常。但是,我有另一个python脚本,它使用不同的命令行参数运行该脚本的批处理版本,我使用的是这样的:importprogram1argum

python - 'sys.excepthook' 和线程

我正在使用Python2.5并尝试在我的程序中使用自定义的excepthook。在主线程中它工作得很好。但是在使用线程模块启动的线程中,通常的excepthook会被调用。这是一个显示问题的例子。取消注释显示所需的行为。importthreading,sysdefmyexcepthook(type,value,tb):print'myexcepthook'classA(threading.Thread,object):def__init__(self):threading.Thread.__init__(self,verbose=True)#raiseException('inmain

python - 'sys.excepthook' 和线程

我正在使用Python2.5并尝试在我的程序中使用自定义的excepthook。在主线程中它工作得很好。但是在使用线程模块启动的线程中,通常的excepthook会被调用。这是一个显示问题的例子。取消注释显示所需的行为。importthreading,sysdefmyexcepthook(type,value,tb):print'myexcepthook'classA(threading.Thread,object):def__init__(self):threading.Thread.__init__(self,verbose=True)#raiseException('inmain