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 @@ -1142,16 +1142,21 @@ if the argument was not one of the acceptable values::
1142
1142
game.py: error: argument move: invalid choice: 'fire' (choose from 'rock',
1143
1143
'paper', 'scissors')
1144
1144
1145
- Note that inclusion in the *choices * sequence is checked after any type _
1146
- conversions have been performed, so the type of the objects in the *choices *
1147
- sequence should match the type _ specified.
1148
-
1149
1145
Any sequence can be passed as the *choices * value, so :class: `list ` objects,
1150
1146
:class: `tuple ` objects, and custom sequences are all supported.
1151
1147
1152
1148
Use of :class: `enum.Enum ` is not recommended because it is difficult to
1153
1149
control its appearance in usage, help, and error messages.
1154
1150
1151
+ Note that *choices * are checked after any type _
1152
+ conversions have been performed, so objects in *choices *
1153
+ should match the type _ specified. This can make *choices *
1154
+ appear unfamiliar in usage, help, or error messages.
1155
+
1156
+ To keep *choices * user-friendly, consider a custom type wrapper that
1157
+ converts and formats values, or omit type _ and handle conversion in
1158
+ your application code.
1159
+
1155
1160
Formatted choices override the default *metavar * which is normally derived
1156
1161
from *dest *. This is usually what you want because the user never sees the
1157
1162
*dest * parameter. If this display isn't desirable (perhaps because there are
You can’t perform that action at this time.
0 commit comments