emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Bug: Python SRC exec tuple fails [7.9.3f (release_7.9.3f-17-g752


From: Andreas Röhler
Subject: Re: [O] Bug: Python SRC exec tuple fails [7.9.3f (release_7.9.3f-17-g7524ef <at> MY-PATH/)]
Date: Wed, 08 May 2013 18:11:10 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130329 Thunderbird/17.0.5

Am 08.05.2013 16:02, schrieb Roland Donat:
Andreas Röhler <andreas.roehler <at> easy-emacs.de> writes:


Am 08.05.2013 15:20, schrieb Roland Donat:


hmm, indeed, shows up nicely now.
Please close, cheers,

Andreas



That's right, it works with python3 but that is not the case with
python2...

Cheers,

Roland.

python2 fails here already with a common shell, independently from Emacs.

OTOH that works with python2:

#+NAME: test
#+begin_src python :results value :preamble # -*- coding: utf-8 -*-
:return a[0][0]
a = ( ( "é", "a" ), ( "a", "à" ) )
#+end_src

#+RESULTS: test
: é

Maybe there is a work-around from
a[0][0]

?



Yes, you're right Andreas. It "fails" to show the accented characters if you
try to print the entire tuple.
It fails too if you evaluate a[0][0] in your interpreter. You should see :
a[0][0]
'\xc3\xa9'
But print a[0][0] gives the expected answer 'é'

So, based on your successful experience consisting in returning a[0][0] in
the orgmode source block, we can assume that org-babel use the python print
function to display results in org buffer, aren't we?

Another strange behaviour, when you evaluate the src_block test given in
example, you get :
| \303\251 | a        |
| a        | \303\240 |

Whereas I was expecting to get the same code than in the python interpreter,
that is :
| \xc3\xa9 | a          |
| a        | '\xc3\xa0' |

In addition, when I try to save my buffer, Emacs doesn't recognize the
encoding of characters \303\251 and \303\240 and asks me to choose an
encoding. Then, I enter utf-8 and nothing happens BUT when I quit and reopen
my file : the characters are printed correctly.... Too strange for me....

Cheers,

Roland.

so what about that:

a = ( ( "é", "a" ), ( "a", "à" ) )
for i, j in a:
    print i, j


BTW previous post was sent prematurely..

Andreas





reply via email to

[Prev in Thread] Current Thread [Next in Thread]