ArgParse - Mutually Exclusive Options

Building Command Line Tools with Python, Julia and Nodejs Module 02 - Building Command Line Tools in Python with ArgParse
9 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$69.99
List Price:  $99.99
You save:  $30
€67.35
List Price:  €96.21
You save:  €28.86
£55.83
List Price:  £79.77
You save:  £23.93
CA$100.76
List Price:  CA$143.95
You save:  CA$43.19
A$112.23
List Price:  A$160.33
You save:  A$48.10
S$95.14
List Price:  S$135.93
You save:  S$40.78
HK$543.62
List Price:  HK$776.63
You save:  HK$233.01
CHF 63.04
List Price:  CHF 90.06
You save:  CHF 27.02
NOK kr797.48
List Price:  NOK kr1,139.30
You save:  NOK kr341.82
DKK kr502.49
List Price:  DKK kr717.87
You save:  DKK kr215.38
NZ$124.10
List Price:  NZ$177.29
You save:  NZ$53.19
د.إ257.07
List Price:  د.إ367.26
You save:  د.إ110.18
৳8,361.55
List Price:  ৳11,945.58
You save:  ৳3,584.03
₹5,962.79
List Price:  ₹8,518.63
You save:  ₹2,555.84
RM314.04
List Price:  RM448.65
You save:  RM134.61
₦108,335.42
List Price:  ₦154,771.52
You save:  ₦46,436.10
₨19,495.71
List Price:  ₨27,852.21
You save:  ₨8,356.49
฿2,390.81
List Price:  ฿3,415.60
You save:  ฿1,024.78
₺2,467.44
List Price:  ₺3,525.07
You save:  ₺1,057.62
B$434.14
List Price:  B$620.23
You save:  B$186.09
R1,296.68
List Price:  R1,852.48
You save:  R555.80
Лв131.68
List Price:  Лв188.12
You save:  Лв56.44
₩102,198.93
List Price:  ₩146,004.73
You save:  ₩43,805.79
₪256.56
List Price:  ₪366.53
You save:  ₪109.97
₱4,090.81
List Price:  ₱5,844.26
You save:  ₱1,753.45
¥10,994.99
List Price:  ¥15,707.80
You save:  ¥4,712.81
MX$1,408.98
List Price:  MX$2,012.91
You save:  MX$603.93
QR255.09
List Price:  QR364.43
You save:  QR109.34
P967.82
List Price:  P1,382.66
You save:  P414.84
KSh9,046.20
List Price:  KSh12,923.70
You save:  KSh3,877.50
E£3,562.49
List Price:  E£5,089.49
You save:  E£1,527
ብር8,907.19
List Price:  ብር12,725.10
You save:  ብር3,817.91
Kz63,830.88
List Price:  Kz91,190.88
You save:  Kz27,360
CLP$69,323.69
List Price:  CLP$99,038.09
You save:  CLP$29,714.40
CN¥510.80
List Price:  CN¥729.75
You save:  CN¥218.94
RD$4,245.36
List Price:  RD$6,065.06
You save:  RD$1,819.70
DA9,465.07
List Price:  DA13,522.10
You save:  DA4,057.03
FJ$162.39
List Price:  FJ$232
You save:  FJ$69.60
Q539.11
List Price:  Q770.19
You save:  Q231.08
GY$14,638.77
List Price:  GY$20,913.42
You save:  GY$6,274.65
ISK kr9,772.70
List Price:  ISK kr13,961.60
You save:  ISK kr4,188.90
DH703.98
List Price:  DH1,005.73
You save:  DH301.75
L1,291.33
List Price:  L1,844.84
You save:  L553.50
ден4,143.97
List Price:  ден5,920.21
You save:  ден1,776.24
MOP$559.97
List Price:  MOP$800
You save:  MOP$240.02
N$1,289.45
List Price:  N$1,842.15
You save:  N$552.70
C$2,574.80
List Price:  C$3,678.44
You save:  C$1,103.64
रु9,534.71
List Price:  रु13,621.60
You save:  रु4,086.89
S/260.99
List Price:  S/372.86
You save:  S/111.86
K283.85
List Price:  K405.52
You save:  K121.66
SAR262.91
List Price:  SAR375.60
You save:  SAR112.69
ZK1,936.45
List Price:  ZK2,766.47
You save:  ZK830.02
L335.12
List Price:  L478.77
You save:  L143.64
Kč1,694.03
List Price:  Kč2,420.15
You save:  Kč726.12
Ft27,771.44
List Price:  Ft39,675.18
You save:  Ft11,903.74
SEK kr774.38
List Price:  SEK kr1,106.30
You save:  SEK kr331.92
ARS$71,792.58
List Price:  ARS$102,565.23
You save:  ARS$30,772.64
Bs484.55
List Price:  Bs692.24
You save:  Bs207.69
COP$307,165.41
List Price:  COP$438,826.54
You save:  COP$131,661.12
₡35,530.54
List Price:  ₡50,760.09
You save:  ₡15,229.55
L1,777.33
List Price:  L2,539.15
You save:  L761.82
₲546,250
List Price:  ₲780,390.60
You save:  ₲234,140.59
$U3,115.91
List Price:  $U4,451.49
You save:  $U1,335.58
zł287.82
List Price:  zł411.19
You save:  zł123.37
Already have an account? Log In

Transcript

All right, so welcome back again. So in this particular session, we try to see how to work with mutually exclusive options argument. Let's see how to work with this. I'm just going to create my first file. From here, let's say this was our last mutual exclusive. So let's call this mutual, liquid mutual, exclusive seller, right?

The pie can just limit as you want, the less fissile for input package, put a pass, then do the same thing I have been all the time are definitely a main function, then we're going to close our function variable. So give me let's see what I mean by mutually exclusive. So mutually exclusive groups are options whereby making sure that two options cannot coexist together, right? So we can only use one option at a time. So let's see what I mean by that. So I'm going to create my first parser He's going to be our pass.

Admit parser as always, and then let's give it a description. So let's look at the description. there let's go to patrol exclusive rights mutually supported neutrally exclusive options. So let's see what I mean by that. So first of all, we have created our past analysis, create our face admit what's called a sponsor, ad a commit, then I can just give it a normal positional argument. So let's call this one as number three.

This number must be an A type of it. So that we click on it. Now what you want to do that anytime you see the number, you want to be able to do some form of calculation. So let's give it a calculation to do to calc Then this is going to be, that's the number that you're getting. Right? plus, times all plus a number, right?

So let's give it a specific type 40. So the number would be multiplying by two goes one, two, multiply that number, you have to first of all, get order, do it using the X. pasa besides pass, x, like to store everything, the newbies in that particular admit that you're storing from the namespace, multiply to a number, right? Very interested is what you want from the user for this, print it out and see what you have to print call. Right. So let's see this one, and I'll come back here. Then this run it to Python three, the name of office mutual exclusive Does that help?

Pivot so we have optional administrative number, like supply the number yet likely see 20 it must return to me 800 credit score interested. But this is quite a simple form. So I wanted to, to ensure that I can do it purposefully or in a silent mode right before showing the process. So let's see what I mean by that. So in this case, you can use it which will be exclusive, right? When you want to do a calculation that is not, it would give you two options, right?

One in which you are showing the entire process and money we can show in the appraisal but only given the result. So that is one of the use cases for mutually exclusive. So let's see how to work with it. So I'm just going to come to this place. And I'm going to call this my mutual exclusive group option is going to be an option. Then from here, I can just go straight away with our group.

Then I'll pass in data but pod mutual exclusive group. Nice, cool group. That is what I really need, right? So that's all so now using this particular group to take My options right to pass my options are going to be our group that had admit, and I'm going to supply that particular ultimatum with a plug for this one's going to be verbose. They're going to take the short format of V, then give it a hope, which is going to be a C, table C. process. That's right, like that, right?

Give it any name as you wish. There's going to be the first one we're going to talk with another one for quite quietly, right or silently so this one can be quiet. So let's keep it quiet. One is verbose. And then one is quite cute. Very interesting.

So there's going to be quietly or silently possessive. So we have two different do me two different options that they cannot coexist together. Right. So if I save this one now, and now let's add some features to it to make it look interesting. If I save it, and I run it together, let's run it again together, we had the same thing. But let's go with the help.

So we have mutually exclusive options. everything's working well, but we cannot use this wants to get right. One of the ways you can make sure that you don't go to UT together that we have to sit and said this was to Abuja, taxes are going to be still true. But if I omit this one right now, and then I save it, and I come back here, and let's run it through this one. Let's give it the full purpose. And then kill it's going to give us no right mutual exclusive spitted one argument, right even at this particular commit to give me verbose, spit at one argument, even if I run it as a one switch To give us a CMA debited, it is given as an error that because it is an option spitting an argument, right?

So the only way that you're going to convert this particular option from the normal default action store to store true story is going to compare the two Boolean by tsunami that is now no more going to be the no master which is going to be a good estimate right. If I save it, I come back to the same thing and I run it master is not giving us any table to execute or result by as one way of solving office in that particular issue. So, we have to see it, let me know if I come back here. And I run it again with a Q is that is given out there also, we cannot put them together right because they are mutually exclusive. So one must operate separately from the other it cannot be verbose, the same time silence cannot be silent at the same time verbose has to be alternative luckies Let's see how it works.

So let's see how to use it personally. So I'm just going to come back to this place go to the coordinates and give you some interesting stuff like this Eve for us, but there was that I wanted to print it was to print something. We're going to keep the interpreter. So, then multiplication of our number of like, can you give it any name on occasion result of that number is this particular number, right? So good format, not passing my X number. Not passing my results result, right.

So let's call this one calculation can call it us result that is used Nothing cleaner. So let's make it as a result we are going to do that so this is going to print only if there is verbose. It is not going to go on to the next one. If x dot quiet then do another stuff we want to be present. Then just going to quietly print printed to let's make this one a sprint at a normal. We're going to keep the results straight away, which is going to be our result if I deleted one is because I'm going to see else this trend is also we have two different results to club one that is verbose.

One that is quietly done in one artist without interruption. So let's see within writing C, come back to the same place. Now I come back Can I go with verbose. You have executed a verbose here, right? So we have to hide this one. We have executed that we'll see if we can perfectly then if I come back to the other one.

Which is quite nice to have the quiet option. So this is for the quiet and this is for the purpose in case I didn't supply intent. So going to work perfectly for us are the basic idea about how to use your options mutually exclusively. So the basic idea that's just going to create your own main parser to create a group with our mutually exclusive group. And when you create your two different mutually exclusive options, you make sure that you store them as true right, where we are interested, then you can do your question. So tell us how to work today.

So thank you and see you next session. Stay blessed.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.