小编Mat*_*zyk的帖子

覆盖默认的argparse -h行为

我有一个调用其插件的特定配置文件.可以将参数传递给这些插件.此配置文件还允许我在运行时调用任意命令.

插件使用了许多参数:其中一个是-h并且它不代表--help.现在,我的问题是我想调用我自己的Python脚本以及传递一些参数.我正在使用argparse,并希望与配置的其余部分保持一致,我创建了一个-h标志.令我惊讶的是,argparse只是给了我argparse.ArgumentError: argument -h/--help: conflicting option string(s): -h而不是自己创业.

有没有办法阻止这种情况发生?

我很清楚,大多数人都希望-h提供帮助,但这是我自己的脚本,我想我比argparse devs更清楚我想要使用标志.

python argparse

16
推荐指数
3
解决办法
7230
查看次数

以编程方式检查可执行文件是否存在而不运行它或使用`which`

我们可以在以下foo帮助下运行流程System.Process.proc:

createProcess $ proc "foo" []
Run Code Online (Sandbox Code Playgroud)

但是我们提前知道是否foo可以找到.我们可以运行它并捕获异常,但这很糟糕.我们也可以先打电话,which但也很糟糕.在process图书馆中我们发现RawCommand了截至今天所说的内容

FilePath参数命名可执行文件,并根据平台搜索可执行文件的标准策略进行解释.特别:

  • 在Unix系统上使用execvp(3)语义,如果可执行文件名不包含斜杠(/),则在PATH环境变量中搜索可执行文件.

  • 在Windows系统上使用Win32 CreateProcess语义.简而言之:如果文件名不包含路径,则搜索包含父可执行文件的目录,然后搜索当前目录,然后搜索一些标准位置,最后搜索当前PATH.如果文件名尚未具有扩展名,则添加.exe扩展名.有关完整详细信息,请参阅Windows SearchPath API的文档.

这正是我想要做的,但似乎没有任何暴露的功能.我只是错过了它,是否有更规范/更好的方式,还是我必须通过process内部挖掘?解决方案应该是可移植的(Windows/Linux).

haskell

9
推荐指数
1
解决办法
449
查看次数

使用HXT unpickler忽略XML属性

我正在编写一个小应用程序,旨在从多个站点中提取XML,然后以我想要的方式处理数据.我之前用不同的语言制作了这样的应用程序,我正在为Haskell实践编写这个应用程序.

无论如何,到了这一点.在百万和一个不同的XML解析器环顾网络后,我决定选择HXT,因为谁不喜欢箭头.在页面http://www.haskell.org/haskellwiki/HXT/Conversion_of_Haskell_data_from/to_XML之后,我已经找到了一些似乎读取我的XML文件并将其放入我定义的Haskell数据类型的东西.我正在使用XmlPickler的实例来读取文件中的数据来实现这一目标.除了这个错误,我到达了可以工作的东西:

fatal error: document unpickling failed
xpCheckEmptyAttributes: unprocessed XML attribute(s) detected
Run Code Online (Sandbox Code Playgroud)

我知道我没有处理所有属性.我不想要所有的属性.有没有办法忽略这些?我想我可以处理所有属性,将它们放在一个新的数据类型中,然后从中提取属性以获取我真正想要的数据.我想避免这个小小的黑客,因此我在这里,要求正确的方式™.

我使用错误的工具来完成工作吗?解开第三方数据是不安全的(就像在Python中一样)?

我环顾网络寻找解决方案,但Text.XML.HXT.Arrow.XmlState.SystemConfig似乎没有我需要禁用此行为.

xml haskell hxt

4
推荐指数
1
解决办法
353
查看次数

使用 QGraphicsBlurEffect 进行 QImage 变换

我正在寻找一种方法来将模糊应用到QImageusing 上QGraphicsBlurEffect而无需在setGraphicsEffect持有它的标签上进行欺骗(这在不同的 SO 问题上进行了演示)。

基本上,我正在寻找一个函数blur,这样QImage blur(QImage, QGraphicsBlurEffect);

存在一个有点类似的函数,qt_blurImage但它被导出到一个私有头文件中,我宁愿不使用它。

遗憾的是,QImage没有setGraphicsEffect

我当然可以推出我自己的适用于原始数据的模糊功能,但我宁愿不重新实现已经存在的东西。

c++ qt

0
推荐指数
1
解决办法
2178
查看次数

标签 统计

haskell ×2

argparse ×1

c++ ×1

hxt ×1

python ×1

qt ×1

xml ×1