Python -Vs- Ruby: A regexp match to the death!
Robert Kern
robert.kern at gmail.com
Mon Aug 9 16:23:11 EDT 2010
On 2010-08-09 06:42 , Stefan Schwarzer wrote:
> Hi Steven,
>
> On 2010-08-09 10:21, Steven D'Aprano wrote:
>> And that it's quite finicky about blank lines between methods and inside
>> functions. Makes it hard to paste code directly into the interpreter.
>>
>> And that pasting doesn't strip out any leading prompts. It needs a good
>> doctest mode.
>
> ipython [1] should help here:
>
> IPython 0.10 -- An enhanced Interactive Python.
> ? -> Introduction and overview of IPython's features.
> %quickref -> Quick reference.
> help -> Python's own help system.
> object? -> Details about 'object'. ?object also works, ?? prints more.
> In [1]: %paste?
> Type: Magic function
> Base Class:<type 'instancemethod'>
> String Form:<bound method InteractiveShell.magic_paste of<IPython.iplib.InteractiveShell object at 0xb740096c>>
> Namespace: IPython internal
> File: /usr/lib/pymodules/python2.6/IPython/Magic.py
> Definition: %paste(self, parameter_s='')
> Docstring:
> Allows you to paste& execute a pre-formatted code block from clipboard.
>
> The text is pulled directly from the clipboard without user
> intervention.
>
> The block is dedented prior to execution to enable execution of method
> definitions. '>' and '+' characters at the beginning of a line are
> ignored, to allow pasting directly from e-mails, diff files and
> doctests (the '...' continuation prompt is also stripped). The
> executed block is also assigned to variable named 'pasted_block' for
> later editing with '%edit pasted_block'.
>
> You can also pass a variable name as an argument, e.g. '%paste foo'.
> This assigns the pasted block to variable 'foo' as string, without
> dedenting or executing it (preceding>>> and + is still stripped)
>
> '%paste -r' re-executes the block previously entered by cpaste.
>
> IPython statements (magics, shell escapes) are not supported (yet).
>
> See also
> --------
> cpaste: manually paste code into terminal until you mark its end.
>
> Unfortunatey, when I enter
>
> In [2]: %paste
>
> at the prompt it gives me (before I pasted anything)
>
> In [2]: %paste
> ------------------------------------------------------------
> File "<string>", line 1
> http://pypi.python.org/pypi/ipython/0.10
> ^
> SyntaxError: invalid syntax
Yes, that's because you had that URL in your clipboard, not Python code. What
were you expecting to happen?
--
Robert Kern
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
More information about the Python-list
mailing list