我刚开始使用argparse模块.我编写了以下简化代码片段来演示我遇到的问题.
from argparse import ArgumentParser
if __name__ == '__main__':
parser = ArgumentParser('Test argparse. This string needs to be relatively long to trigger the issue.')
parser.add_argument('-f', '--fin', help='a', required = True)
parser.add_argument('-o', '--out ', help='b', required = True)
parser.add_argument('-t', '--trans', help='c', required = True)
args = parser.parse_args()
print(repr(vars(args)))
Run Code Online (Sandbox Code Playgroud)
AssertionError将使用参数-h运行脚本时生成
Traceback (most recent call last):
File "arg.py", line 10, in <module>
args = parser.parse_args()
File "C:\Users\user\AppData\Local\Continuum\Anaconda\envs\py3k\lib\argparse.py", line 1707, in parse_args
args, argv = self.parse_known_args(args, namespace)
File "C:\Users\user\AppData\Local\Continuum\Anaconda\envs\py3k\lib\argparse.py", line 1739, …Run Code Online (Sandbox Code Playgroud) 随机采样关联数组的最佳方法是什么?我尝试了以下但该randomize方法总是失败.
std::randomize(idx) with {assoc_array.exists(idx);};
Run Code Online (Sandbox Code Playgroud)
我想我可以next从关联数组的第一个元素开始随机调用方法,以实现所需的.但是,还有更好的方法吗?为什么上面的约束随机化不起作用?
如何连接两个地图的输出以形成单个平面数组?
我试图使用这个:
my $test = { 'foo' => [
map {
{ 'i' => "$_" }
} 0..1,
map {
{ 'j' => "$_" }
} 0..1
] };
Run Code Online (Sandbox Code Playgroud)
为了达到这样的结果:
my $test = {'foo' => [
{
'i' => '0'
},
{
'i' => '1'
},
{
'j' => '0'
},
{
'j' => '1'
},
]}
Run Code Online (Sandbox Code Playgroud)
然而,这是我得到的$test:
{
'foo' => [
{
'i' => '0'
},
{
'i' => '1'
},
{
'i' => 'HASH(0x7f90ad19cd30)'
},
{ …Run Code Online (Sandbox Code Playgroud)