小编Cli*_*iff的帖子

在argparse中使用python关键字作为选项

我正在编写一个简单的Python脚本来导出,导入和区分数据库.我想让用户提供他们想要运行脚本的"模式",我选择import,export和diff作为我的选项.当我通过argparse运行它时,所有解析的选项都以args结尾,我可以使用arg.export或args.diff访问它们,但由于"import"是一个关键字,我遇到了问题.

我可以做一些改变的工作,让它工作,但我想知道是否可以保留我拥有的东西.例如,我可以将选项缩短为"exp","imp"和"diff",或者我可以做一个名为"mode"的选项,希望传入"import","export"或"diff".

我目前的代码:

parser = argparse.ArgumentParser()

group = parser.add_mutually_exclusive_group()
group.add_argument("--export", help="Export source(s)", action="store_true")
group.add_argument("--import", help="Import source(s)", action="store_true")
group.add_argument("--diff", help="Diff sources", action="store_true")

parser.add_argument("filename", help="XML Filename used for exporting to, importing from or comparing while doing diff.")

args = parser.parse_args()

if args.export:
    export_sources(args.filename)
elif args.import:
    import_sources(args.filename)
elif args.diff:
    diff_sources(args.filename)
Run Code Online (Sandbox Code Playgroud)

argparse python-3.x

5
推荐指数
1
解决办法
593
查看次数

如何从ExtJS网格中的rowselection获取列名?

我有一个extjs网格面板设置,我希望能够根据用户点击网格中的文本或图标来做事情.例如,如果用户单击(或双击)列中的单词,则过滤网格,或者如果用户单击图标,则显示弹出窗口.我可以很容易地获取他们点击的行,并按该行的列名称输入值,但我不知道单击了哪一列.

或者,我可以将onClick添加到整个网格,然后我可以从行/列中获取单个文本,但我不知道该值属于哪个行索引或列.我可以添加一个CSS类来告诉我一个列名,但这似乎是一个黑客.

有什么内置可以做到这一点?

javascript grid extjs

2
推荐指数
1
解决办法
2万
查看次数

在python中包装一个函数,提供一个额外的布尔值

我正在将一些代码从Perl移植到Python,我正在移动的一个函数执行以下操作:

sub _Run($verbose, $cmd, $other_stuff...)
{
  ...
}

sub Run
{
  _Run(1, @_);
}

sub RunSilent
{
  _Run(0, @_);
}
Run Code Online (Sandbox Code Playgroud)

所以要做Python,我天真地认为我可以做到以下几点:

def _Run(verbose, cmd, other_stuff...)
  ...

def Run(*args)
  return _Run(True, args);

def RunSilent
  return _Run(False, args);
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为args作为数组/元组传递.为了使它工作,我做了以下事情:

def _Run(verbose, cmd, other_stuff...)
  ...

def Run(*args)
  return _Run(True, ','.join(args));

def RunSilent
  return _Run(False, ','.join(args));
Run Code Online (Sandbox Code Playgroud)

但那看起来很丑陋.有没有更好的办法?

python wrapper

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

标签 统计

argparse ×1

extjs ×1

grid ×1

javascript ×1

python ×1

python-3.x ×1

wrapper ×1