22from FWCore .ParameterSet .VarParsing import VarParsing
33
44def parse (argv ):
5- sys .argv = ['test .py' ,'maxEvents=100' ]+ argv # emulate user arguments
5+ sys .argv = ['test_varparsing_list .py' ,'maxEvents=100' ]+ argv # emulate user arguments
66 opts = VarParsing ('standard' )
7- def add (n , d , m , t ):
8- opts .register (n , d , m , t )
9- add ('myInts0' , '' , VarParsing .multiplicity .list , VarParsing .varType .int )
10- add ('myInts1' , 0 , VarParsing .multiplicity .list , VarParsing .varType .int )
11- add ('myInts2' , [0 ], VarParsing .multiplicity .list , VarParsing .varType .int )
12- add ('myFloats0' , '' , VarParsing .multiplicity .list , VarParsing .varType .float )
13- add ('myFloats1' , 0 , VarParsing .multiplicity .list , VarParsing .varType .float )
14- add ('myFloats2' , [0 ], VarParsing .multiplicity .list , VarParsing .varType .float )
15- add ('myBools0' , '' , VarParsing .multiplicity .list , VarParsing .varType .bool )
16- add ('myBools1' , True , VarParsing .multiplicity .list , VarParsing .varType .bool )
17- add ('myBools2' , [True ], VarParsing .multiplicity .list , VarParsing .varType .bool )
18- add ('myStrs0' , '' , VarParsing .multiplicity .list , VarParsing .varType .string )
19- add ('myStrs1' , 'foo' , VarParsing .multiplicity .list , VarParsing .varType .string )
20- add ('myStrs2' , ['foo' ], VarParsing .multiplicity .list , VarParsing .varType .string )
7+ opts .register ('myInts0' , '' , VarParsing .multiplicity .list , VarParsing .varType .int )
8+ opts .register ('myInts1' , [], VarParsing .multiplicity .list , VarParsing .varType .int )
9+ opts .register ('myInts2' , 0 , VarParsing .multiplicity .list , VarParsing .varType .int )
10+ opts .register ('myInts3' , [0 ], VarParsing .multiplicity .list , VarParsing .varType .int )
11+ opts .register ('myFloats0' , '' , VarParsing .multiplicity .list , VarParsing .varType .float )
12+ opts .register ('myFloats1' , [], VarParsing .multiplicity .list , VarParsing .varType .float )
13+ opts .register ('myFloats2' , 0 , VarParsing .multiplicity .list , VarParsing .varType .float )
14+ opts .register ('myFloats3' , [0 ], VarParsing .multiplicity .list , VarParsing .varType .float )
15+ opts .register ('myBools0' , '' , VarParsing .multiplicity .list , VarParsing .varType .bool )
16+ opts .register ('myBools1' , [], VarParsing .multiplicity .list , VarParsing .varType .bool )
17+ opts .register ('myBools2' , True , VarParsing .multiplicity .list , VarParsing .varType .bool )
18+ opts .register ('myBools3' , [True ], VarParsing .multiplicity .list , VarParsing .varType .bool )
19+ opts .register ('myStrs0' , '' , VarParsing .multiplicity .list , VarParsing .varType .string )
20+ opts .register ('myStrs1' , [], VarParsing .multiplicity .list , VarParsing .varType .string )
21+ opts .register ('myStrs2' , 'foo' , VarParsing .multiplicity .list , VarParsing .varType .string )
22+ opts .register ('myStrs3' , ['foo' ], VarParsing .multiplicity .list , VarParsing .varType .string )
23+ opts .parseArguments ()
24+ #print(f">>> Parsed: {sys.argv} -> lists={opts._lists}")
2125
2226# parse without user arguments
2327parse ([ ])
2428
2529# parse with user arguments
26- parse (['myInts1=0,1' ,'myBools1=True,False ' ,'myStrs1=foo,bar ' ,'myStrs2 =foo,bar' ])
30+ parse (['myInts1=0,1,-1 ' ,'myFloats1=3.14,0,0.0,-1.0 ' ,'myBools1=True,False ' ,'myStrs1 =foo,bar' ])
0 commit comments