Python Forum
Understanding "help()" output?
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Understanding "help()" output?
#1
I am fairly new to Python and sometimes have minor trouble understanding the output from help().

First of all, is there a way to tell what formats are acceptable for *args and **kwargs? When the help() function lists methods, it often gives something like:
Methods defined here:
__method__(self, / ,*args,**kwargs).

I would like to play around and experiment with different modules and methods, but often find it difficult because I can't figure out what formats to use for *args and **kwargs. I also assume that this display fails to communicate the number of arguments that are required as well.
Reply
#2
*args means that the function or method accepts any number of unnamed parameters. The parameters themselves are just expressions or values, and they are separated by commas. **kwargs means that the function or method accepts any number of named parameters, which are a name, and equals sign, and an expression or value. Again, they are separated by commas.
Craig "Ichabod" O'Brien - xenomind.com
I wish you happiness.
Recommended Tutorials: BBCode, functions, classes, text adventures
Reply
#3
Not sure this will help, but:

I wrote a package not long after I started programming in python (this is a warning)
called PyHarry, available here: https://github.com/Larz60p/PyHarry
in that, there is a module named HarryHelp.py (https://github.com/Larz60p/PyHarry/blob/...rryHelp.py)
In that module, there is a method named 'inspect_getHelp' you might find this useful. I believe the intent was
to get all of the help, but you perhaps can scrape some of what's there.
Reply
#4
So for example, when I type (help(bytes)) and receive:

bytes(string, encoding [,errors]) --> errors ,

Does this command take 2 arguments or 3? The bracket notation with the errors confuses me, partly because the comma is inside the bracket. Also, how can I know what types of arguments are acceptable for the encoding?
Reply
#5
The brackets do indicate that that parameter is optional.  bytes, in particular, has a huge amount of docs, and if you go down further, you can see what it expects the encoding to be...
 |
 |  decode(self, /, encoding='utf-8', errors='strict')
 |      Decode the bytes using the codec registered for encoding.
 |
 |      encoding
 |        The encoding with which to decode the bytes.
 |      errors
 |        The error handling scheme to use for the handling of decoding errors.
 |        The default is 'strict' meaning that decoding errors raise a
 |        UnicodeDecodeError. Other possible values are 'ignore' and 'replace'
 |        as well as any other name registered with codecs.register_error that
 |        can handle UnicodeDecodeErrors.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
Question Common understanding of output processing with conditional statement neail 6 826 Sep-17-2023, 03:58 PM
Last Post: neail
  Help understanding RegEx logic/output pyNewbee 4 2,228 Nov-15-2020, 02:21 AM
Last Post: pyNewbee
  understanding output of bytes/raw data rootVIII 3 2,713 Aug-01-2019, 01:00 PM
Last Post: rootVIII
  help on understanding this output landlord1984 1 2,918 Mar-08-2017, 08:29 PM
Last Post: zivoni

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020