Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / amd64 / html / python / lib / optparse-other-methods.html
CommitLineData
920dae64
AT
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3<head>
4<link rel="STYLESHEET" href="lib.css" type='text/css' />
5<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
6<link rel='start' href='../index.html' title='Python Documentation Index' />
7<link rel="first" href="lib.html" title='Python Library Reference' />
8<link rel='contents' href='contents.html' title="Contents" />
9<link rel='index' href='genindex.html' title='Index' />
10<link rel='last' href='about.html' title='About this document...' />
11<link rel='help' href='about.html' title='About this document...' />
12<link rel="prev" href="optparse-conflicts-between-options.html" />
13<link rel="parent" href="optparse-reference-guide.html" />
14<link rel="next" href="optparse-option-callbacks.html" />
15<meta name='aesop' content='information' />
16<title>6.21.3.10 Other methods</title>
17</head>
18<body>
19<DIV CLASS="navigation">
20<div id='top-navigation-panel' xml:id='top-navigation-panel'>
21<table align="center" width="100%" cellpadding="0" cellspacing="2">
22<tr>
23<td class='online-navigation'><a rel="prev" title="6.21.3.9 Conflicts between options"
24 href="optparse-conflicts-between-options.html"><img src='../icons/previous.png'
25 border='0' height='32' alt='Previous Page' width='32' /></A></td>
26<td class='online-navigation'><a rel="parent" title="6.21.3 Reference Guide"
27 href="optparse-reference-guide.html"><img src='../icons/up.png'
28 border='0' height='32' alt='Up One Level' width='32' /></A></td>
29<td class='online-navigation'><a rel="next" title="6.21.4 Option Callbacks"
30 href="optparse-option-callbacks.html"><img src='../icons/next.png'
31 border='0' height='32' alt='Next Page' width='32' /></A></td>
32<td align="center" width="100%">Python Library Reference</td>
33<td class='online-navigation'><a rel="contents" title="Table of Contents"
34 href="contents.html"><img src='../icons/contents.png'
35 border='0' height='32' alt='Contents' width='32' /></A></td>
36<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
37 border='0' height='32' alt='Module Index' width='32' /></a></td>
38<td class='online-navigation'><a rel="index" title="Index"
39 href="genindex.html"><img src='../icons/index.png'
40 border='0' height='32' alt='Index' width='32' /></A></td>
41</tr></table>
42<div class='online-navigation'>
43<b class="navlabel">Previous:</b>
44<a class="sectref" rel="prev" href="optparse-conflicts-between-options.html">6.21.3.9 Conflicts between options</A>
45<b class="navlabel">Up:</b>
46<a class="sectref" rel="parent" href="optparse-reference-guide.html">6.21.3 Reference Guide</A>
47<b class="navlabel">Next:</b>
48<a class="sectref" rel="next" href="optparse-option-callbacks.html">6.21.4 Option Callbacks</A>
49</div>
50<hr /></div>
51</DIV>
52<!--End of Navigation Panel-->
53
54<H3><A NAME="SECTION00821310000000000000000"></A><A NAME="optparse-other-methods"></A>
55<BR>
566.21.3.10 Other methods
57</H3>
58
59<P>
60OptionParser supports several other public methods:
61
62<UL>
63<LI>
64<code>set_usage(usage)</code>
65
66<P>
67Set the usage string according to the rules described above for the
68<code>usage</code> constructor keyword argument. Passing <code>None</code> sets the
69default usage string; use <code>SUPPRESS_USAGE</code> to suppress a usage
70message.
71
72<P>
73</LI>
74<LI>
75<code>enable_interspersed_args()</code>, <code>disable_interspersed_args()</code>
76
77<P>
78Enable/disable positional arguments interspersed with options, similar
79to GNU getopt (enabled by default). For example, if <code>"-a"</code> and
80<code>"-b"</code> are both simple options that take no arguments, <tt class="module">optparse</tt>
81normally accepts this syntax:
82<div class="verbatim"><pre>
83prog -a arg1 -b arg2
84</pre></div>
85
86<P>
87and treats it as equivalent to
88<div class="verbatim"><pre>
89prog -a -b arg1 arg2
90</pre></div>
91
92<P>
93To disable this feature, call <code>disable_interspersed_args()</code>. This
94restores traditional <span class="Unix">Unix</span> syntax, where option parsing stops with the
95first non-option argument.
96
97<P>
98</LI>
99<LI>
100<code>set_defaults(dest=value, ...)</code>
101
102<P>
103Set default values for several option destinations at once. Using
104<tt class="method">set_defaults()</tt> is the preferred way to set default values for
105options, since multiple options can share the same destination. For
106example, if several ``mode'' options all set the same destination, any
107one of them can set the default, and the last one wins:
108<div class="verbatim"><pre>
109parser.add_option("--advanced", action="store_const",
110 dest="mode", const="advanced",
111 default="novice") # overridden below
112parser.add_option("--novice", action="store_const",
113 dest="mode", const="novice",
114 default="advanced") # overrides above setting
115</pre></div>
116
117<P>
118To avoid this confusion, use <tt class="method">set_defaults()</tt>:
119<div class="verbatim"><pre>
120parser.set_defaults(mode="advanced")
121parser.add_option("--advanced", action="store_const",
122 dest="mode", const="advanced")
123parser.add_option("--novice", action="store_const",
124 dest="mode", const="novice")
125</pre></div>
126
127<P>
128</LI>
129</UL>
130
131<P>
132
133<DIV CLASS="navigation">
134<div class='online-navigation'>
135<p></p><hr />
136<table align="center" width="100%" cellpadding="0" cellspacing="2">
137<tr>
138<td class='online-navigation'><a rel="prev" title="6.21.3.9 Conflicts between options"
139 href="optparse-conflicts-between-options.html"><img src='../icons/previous.png'
140 border='0' height='32' alt='Previous Page' width='32' /></A></td>
141<td class='online-navigation'><a rel="parent" title="6.21.3 Reference Guide"
142 href="optparse-reference-guide.html"><img src='../icons/up.png'
143 border='0' height='32' alt='Up One Level' width='32' /></A></td>
144<td class='online-navigation'><a rel="next" title="6.21.4 Option Callbacks"
145 href="optparse-option-callbacks.html"><img src='../icons/next.png'
146 border='0' height='32' alt='Next Page' width='32' /></A></td>
147<td align="center" width="100%">Python Library Reference</td>
148<td class='online-navigation'><a rel="contents" title="Table of Contents"
149 href="contents.html"><img src='../icons/contents.png'
150 border='0' height='32' alt='Contents' width='32' /></A></td>
151<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
152 border='0' height='32' alt='Module Index' width='32' /></a></td>
153<td class='online-navigation'><a rel="index" title="Index"
154 href="genindex.html"><img src='../icons/index.png'
155 border='0' height='32' alt='Index' width='32' /></A></td>
156</tr></table>
157<div class='online-navigation'>
158<b class="navlabel">Previous:</b>
159<a class="sectref" rel="prev" href="optparse-conflicts-between-options.html">6.21.3.9 Conflicts between options</A>
160<b class="navlabel">Up:</b>
161<a class="sectref" rel="parent" href="optparse-reference-guide.html">6.21.3 Reference Guide</A>
162<b class="navlabel">Next:</b>
163<a class="sectref" rel="next" href="optparse-option-callbacks.html">6.21.4 Option Callbacks</A>
164</div>
165</div>
166<hr />
167<span class="release-info">Release 2.4.2, documentation updated on 28 September 2005.</span>
168</DIV>
169<!--End of Navigation Panel-->
170<ADDRESS>
171See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
172</ADDRESS>
173</BODY>
174</HTML>