File tree Expand file tree Collapse file tree 1 file changed +9
-4
lines changed Expand file tree Collapse file tree 1 file changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -1058,16 +1058,21 @@ if the argument was not one of the acceptable values::
10581058 game.py: error: argument move: invalid choice: 'fire' (choose from 'rock',
10591059 'paper', 'scissors')
10601060
1061- Note that inclusion in the *choices * sequence is checked after any type _
1062- conversions have been performed, so the type of the objects in the *choices *
1063- sequence should match the type _ specified.
1064-
10651061Any sequence can be passed as the *choices * value, so :class: `list ` objects,
10661062:class: `tuple ` objects, and custom sequences are all supported.
10671063
10681064Use of :class: `enum.Enum ` is not recommended because it is difficult to
10691065control its appearance in usage, help, and error messages.
10701066
1067+ Note that *choices * are checked after any type _
1068+ conversions have been performed, so objects in *choices *
1069+ should match the type _ specified. This can make *choices *
1070+ appear unfamiliar in usage, help, or error messages.
1071+
1072+ To keep *choices * user-friendly, consider a custom type wrapper that
1073+ converts and formats values, or omit type _ and handle conversion in
1074+ your application code.
1075+
10711076Formatted choices override the default *metavar * which is normally derived
10721077from *dest *. This is usually what you want because the user never sees the
10731078*dest * parameter. If this display isn't desirable (perhaps because there are
You can’t perform that action at this time.
0 commit comments