Fred Mailhot wrote:
Hi,
It is stated in PEP 257 that:
"The docstring of a script (a stand-alone program) should be usable as
its "usage" message, printed when the script is invoked with incorrect
or missing arguments (or perhaps with a "-h" option, for "help").[...]"
I wasn't aware of that advice. Hmmm...
Anway - how about this:
import sys
module = sys.modules['__main__'] # or [__name__]
docstring = module.__doc__
All the best,
Michael
This is exactly what I'm trying to do, but I haven't been able to
figure out how to access a script's docstring from within it. That is,
I'm assuming (perhaps erroneously) that I can define some kind of
usage function in my script that will spit out the docstring, as in
the following example
#!/usr/bin/python
"""
myscript.py
Usage: python myscript.py <params>
Some more specific info here.
"""
[python code here]
def main():
[do stuff here]
### THIS IS WHAT I'D LIKE TO DO... ###
def usage():
sys.stderr.write(this.__doc__)
sys.exit()
### EXCEPT OF COURSE "this" ISN'T DEFINED
if __name__ == "__main__":
if [some condition is not satisfied]:
usage()
else:
main()
################################
What should I be doing instead? I've Googled a bunch and turned up
nothing, so I may just not be looking for the right terms (Googling
"python print script docstring" gets me nothing).
Thanks!
Fred.
------------------------------------------------------------------------
_______________________________________________
Doc-SIG maillist - Doc-SIG@python.org
http://mail.python.org/mailman/listinfo/doc-sig
--
http://www.ironpythoninaction.com/
_______________________________________________
Doc-SIG maillist - Doc-SIG@python.org
http://mail.python.org/mailman/listinfo/doc-sig