Vraag Python 2.7: geen documentatie gevonden bij het typen van hulp ('afdrukken')


Ik heb zojuist Python 2.7 en Python 3.2 op mijn Ubuntu 12.04 (32 bit) geïnstalleerd.

sudo apt-get install python python-doc python3 python3-doc

Ik opende een Python 3-shell (wordt het zo genoemd) met typen python3 van een terminal. Als ik het bevel uitvaardig help('print') alles werkt goed en ik kan de documentatie lezen.

Als ik echter een Python 2.7-shell open (python van een terminal) wanneer ik typ help('print') Ik krijg het volgende bericht:

geen documentatie gevonden voor 'print'

Hoe kan ik de documentatie ook in Python 2.7 gebruiken?


3
2017-12-20 12:10


oorsprong




antwoorden:


Dit lijkt op een bug van Python 2 als zoiets help("dir") werkt naar behoren. Waarschijnlijk werkt het niet omdat print is een speciaal trefwoord, in tegenstelling tot Python 3. Blijf bij Python 3 of voer de volgende opdracht uit in plaats van help("print"):

help("__builtin__.print")

3
2017-12-20 14:02





Die documentatie is altijd geïnstalleerd, omdat deze is ingesloten in de bronbestanden. De opgegeven opdracht werkt niet omdat in python2.7 print is zowel een statement als een functie, dus het kan de help functie.

Als u bijvoorbeeld gebruikt help('os') of help("if") je zou de juiste informatie moeten krijgen:

$ python -c "help('if')"
The ``if`` statement
********************

The ``if`` statement is used for conditional execution:

   if_stmt ::= "if" expression ":" suite
               ( "elif" expression ":" suite )*
               ["else" ":" suite]

It selects exactly one of the suites by evaluating the expressions one
by one until one is found to be true (see section *Boolean operations*
for the definition of true and false); then that suite is executed
(and no other part of the ``if`` statement is executed or evaluated).
If all expressions are false, the suite of the ``else`` clause, if
present, is executed.

Dus de documentatie is geïnstalleerd en het gedrag dat u ziet zou een bug moeten zijn.


1
2017-12-20 14:08



help('if') werkt ook in een python-omhulsel. Het is alleen dat help('print') werkt anders (lees: toont geen hulppagina): python2 -c "help('print')". - Lekensteyn