Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Marco Beri
2013/5/8 Gabriel Battaglia (Kriyaban) iz4...@libero.it

 **
 Ho provato a selezionare il testo come normalmente faccio in un editor,
 cioè tenendo premuto shift e muovendomi con le frecce verticali, per poi
 copiare la selezione con ctrl+c ma nella shell di ipython, questo non
 funziona.


Hai provato anche con CTRL + INS ?

Ciao.
Marco.

-- 
http://beri.it/ - Un blog
http://beri.it/i-miei-libri/ - Qualche libro
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gollum1
Il 08 maggio 2013 15:02, Gabriel Battaglia (Kriyaban)
iz4...@libero.it ha scritto:
 Ciò che cerco è più semplice.

 1. Lancio ipython
 2. al prompt, provo del codice;
 3. viene sollevata una eccezione:
 Out [n] QualcosaError:
 ..
 

 Io vorrei copiare negli appunti quell'errore, contenuto in Out [n], per poi
 magari copiarlo qui e chiedere aiuto o spiegazioni.
 In altre parole mi servirebbe catturare l'output dell'interprete di ipython,
 negli appunti.

 Ho provato a selezionare il testo come normalmente faccio in un editor, cioè
 tenendo premuto shift e muovendomi con le frecce verticali, per poi copiare
 la selezione con ctrl+c ma nella shell di ipython, questo non funziona.

presumo che l'interprete python in modalità terminale usi un shell di
dos, quindi potrebbe funzionare il sistema stesso di dos.

se mi ricordo bene: selezionare quello che vuoi copiare, e battere return.

oppure con il menù contestuale sulla barra della finestra.



--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)
2013/5/8 Gabriel Battaglia (Kriyaban) iz4...@libero.it

 **
 Ho provato a selezionare il testo come normalmente faccio in un editor,
 cioè tenendo premuto shift e muovendomi con le frecce verticali, per poi
 copiare la selezione con ctrl+c ma nella shell di ipython, questo non
 funziona.

Marco Beri:
Hai provato anche con CTRL + INS ?

Gb:
Non fa nulla, Mentre ctrl+c esegue un KeyboardInterrupt.
Penso ci sia una funzione apposita di iPython perchè esportare l'output 
dall'interprete è, o dovrebbe essere una funzione 
basilare.
Tuttavia, non è fondamentale per me, la troverò! Grazie comunque.
G.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)
From: Gollum1 gollum1.smeag...@gmail.com
presumo che l'interprete python in modalità terminale usi un shell di
dos, quindi potrebbe funzionare il sistema stesso di dos.
GB:
Sì, la modalità di funzionamento è identica a quella della shell DOS.

Gollum1:
se mi ricordo bene: selezionare quello che vuoi copiare, e battere return.

GB:
Il problema è selezionare... Come?

Gollum1:
oppure con il menù contestuale sulla barra della finestra.

GB:
Sotto modifica presenta: seleziona tutto... Ma non mi serve perchè tutto è, 
TROPPO! :D
Oppure copia che rimane però grayed finchè non selezioni qualcosa. 
Operazione che con la tastiera non riesco a fare.
Forse si potrebbe fare col mouse, non saprei, non posso usarlo Gollum, 
perchè non ci vedo e uso il pc via ScreenReader.

Ciao.
G 
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Daniele Zambelli
Il giorno 08 maggio 2013 15:46, Gabriel Battaglia (Kriyaban) 
iz4...@libero.it ha scritto:

 **
 2013/5/8 Gabriel Battaglia (Kriyaban) iz4...@libero.it
 Marco Beri:

 Hai provato anche con CTRL + INS ?

 Gb:
 Non fa nulla, Mentre ctrl+c esegue un KeyboardInterrupt.

 Da me funziona ctrlins per copiare e shiftins per incollare.
(Debian-KDE).

Ciao

-- 

Daniele

www.fugamatematica.blogspot.com

giusto!
nel verso
forse è perché non guardiamo le cose
Quando non ci capiamo,
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gollum1
Il 08 maggio 2013 16:09, Daniele Zambelli daniele.zambe...@gmail.com
ha scritto:

 Da me funziona ctrlins per copiare e shiftins per incollare.
 (Debian-KDE).

hai detto poco... a noi basta selezionare con il mouse, e incollare
premendo la rotella, senza neppure usare la tastiera.

--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gollum1
Il 08 maggio 2013 15:51, Gabriel Battaglia (Kriyaban)
iz4...@libero.it ha scritto:
 GB:
 Il problema è selezionare... Come?

 Gollum1:
 oppure con il menù contestuale sulla barra della finestra.

 GB:
 Sotto modifica presenta: seleziona tutto... Ma non mi serve perchè tutto
 è, TROPPO! :D

nelle finestre dos (che questa dovrebbe ereditare) hai nel menù
contestuale la voce modifica, dentro trovi:

seleziona (abilita il mouse per selezionare il testo che ti serve)
copia INVIO (per copiare, non usabile fino a che non hai fatto una selezione)
Incolla (...)
Seleziona tutto
trova...


quindi dovresti avere il seleziona semplice, e non solo il seleziona tutto...

-- 
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Daniele Zambelli
Il giorno 08 maggio 2013 15:51, Gabriel Battaglia (Kriyaban) 
iz4...@libero.it ha scritto:

funziona anche ctrlshiftc per copia e ctrlshiftv per incolla.

Il problema è selezionare... Come?


ma non sono riuscito a  selezionare con la tastiera. :-P


-- 

Daniele

www.fugamatematica.blogspot.com

giusto!
nel verso
forse è perché non guardiamo le cose
Quando non ci capiamo,
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Manlio Perillo
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Il 08/05/2013 17:06, Gollum1 ha scritto:
 Il 08 maggio 2013 16:09, Daniele Zambelli daniele.zambe...@gmail.com
 ha scritto:
 
 Da me funziona ctrlins per copiare e shiftins per incollare.
 (Debian-KDE).
 
 hai detto poco... a noi basta selezionare con il mouse, e incollare
 premendo la rotella, senza neppure usare la tastiera.

E secondo te in che modo si fa prima?


Ciao  Manlio
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAlGKbL8ACgkQscQJ24LbaUQ3wQCfYg8aiafrVqfr4YyH+WBCYfg/
oLEAoInCk0VNzKO9yxyO3qg8skinTUGu
=RWY9
-END PGP SIGNATURE-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gollum1
Il 08 maggio 2013 17:18, Manlio Perillo manlio.peri...@gmail.com ha scritto:

 E secondo te in che modo si fa prima?


dipende da cosa stai usando naturalmente, io avvio l'interprete python
dentro konsole, posso usare ctrl-shift-c per copiare e
ctrl-shift-v per incollare, ma per fare la selezione, l'unica che ho
visto è farla attraverso il mouse (a questo punto incollo con il tasto
centrale, visto che già lo sto usando per selezionare, poi per passare
nel client di posta/chromium).

altri modi per fare la selezione, da tastiera, non ne ho trovati.


--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Daniele Zambelli
Il giorno 08 maggio 2013 17:18, Manlio Perillo
manlio.peri...@gmail.comha scritto:

  hai detto poco... a noi basta selezionare con il mouse, e incollare
  premendo la rotella, senza neppure usare la tastiera.

 E secondo te in che modo si fa prima?


Se devo usare il mouse per selezionare, a quel punto, senza lasciarlo, lo
punto dove voglio inserire la selezione e clicco con il centrale.

Ma qui il problema è selezionare una parte della console di Ipython senza
usare il mouse.

Ciao

-- 

Daniele

www.fugamatematica.blogspot.com

giusto!
nel verso
forse è perché non guardiamo le cose
Quando non ci capiamo,
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gollum1
Il 08 maggio 2013 17:27, Daniele Zambelli daniele.zambe...@gmail.com
ha scritto:

 Se devo usare il mouse per selezionare, a quel punto, senza lasciarlo, lo
 punto dove voglio inserire la selezione e clicco con il centrale.

 Ma qui il problema è selezionare una parte della console di Ipython senza
 usare il mouse.

Vedi che c'é sempre da imparare?

non conoscevo neppure l'esistenza di ipython, io ho sempre lanciato
l'interprete in konsole, e fatto le mie prove da li...
l'autocompletamento di ipython è interessante, parecchio.

però è sempre aperto come programma in console, quindi non credo che
cambi nulla sul discorso di poter selezionare con la tastiera, la vedo
parecchio difficile, ma mi posso sempre sbagliare, non avendolo mai
usato prima.

(è da pochi giorni che mi interesso a python).


--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Gollum1
domanda forse banale, vedo che nelle librerie si parla di utf8, ma a
livello di interprete, se nel codice ho una stringa che contiene una
lettere accentata, l'interprete esce con un errore.

esiste un qualche modo per indicare all'interprete che il file è in
utf8, e quindi può contenere (nelle stringhe naturalmente) caratteri
strani?

Byez
--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)

Da: Gollum1 gollum1.smeag...@gmail.com

Vedi che c'é sempre da imparare?

non conoscevo neppure l'esistenza di ipython, io ho  sempre lanciato
l'interprete in konsole, e fatto le mie prove da li...
l'autocompletamento di ipython è interessante, parecchio.

però è sempre aperto come programma in console, quindi non credo che
cambi nulla sul discorso di poter selezionare con la tastiera, la vedo
parecchio difficile, ma mi posso sempre sbagliare, non avendolo mai
usato prima.

[...]

:) temo proprio che non ti stai sbagliando affatto...

Se c'è una soluzione, e propenderei per il sì, questa dipende da ipython stesso che possiede una marea di funzioni chiamate magic 
che consentono di fare più o meno di tutto, con ciò che si scrive nell'interprete e con ciò che quest'ultimo ci risponde di rimando; 
non è cercando di selezionare dalla console, qualsiasi periferica al di là del mouse credo non abbia speranza, che si deve cercare 
ma in una di queste magic functions.
Ho dato una scorsa, prima alla quickreference e poi al manuale di ipython ed è stato come affacciarsi da un finestrone al 30° piano 
di un palazzo... C'è da studiarci su per settimane, se non mesi, nel mio caso. Chiedevo in lista perchè qui, un paio di persone me 
lo avevano suggerito, qualche tempo fa e pensavo che conoscessero al volo la risposta... Dimenticavo però, mi capita spesso! Che io 
faccio le cose in maniere spesso alternative ed inusualy, il !Mouse, in questo caso.


Potrei sempre usare Eclipse, la cui console di Output invece, si comporta proprio come un file di testo entro cui funzionano tutti i 
normali comandi di selezione ed editing; ma Eclipse è un'altra storia e lo apro solo per progetti più consistenti delle prove  e 
provette che faccio mentre studio. :)


Grazie a tutti.
G. 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)

Da: Gollum1 gollum1.smeag...@gmail.com
domanda forse banale, vedo che nelle librerie si parla di utf8, ma a
livello di interprete, se nel codice ho una stringa che contiene una
lettere accentata, l'interprete esce con un errore.

esiste un qualche modo per indicare all'interprete che il file è in
utf8, e quindi può contenere (nelle stringhe naturalmente) caratteri
strani?

GB: attenzione, momento quasi storico... Tento la mia prima risposta in lista!
Prova a mettere una u davanti alla stringa da passare:
uPerchè così?
uPerchè di sì!

Però è meglio che aspetti risposte da fonti più certe! :)
Ciao.
G

@Tutti:
PS: è considerato scorretto, infantile, stilisticamente off, usare emoticons nel contesto di questa lista? 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Marco Beri
2013/5/8 Gabriel Battaglia (Kriyaban) iz4...@libero.it

 PS: è considerato scorretto, infantile, stilisticamente off, usare
 emoticons nel contesto di questa lista?


Assolutamente sì! ;-)

È totalmente vietato! :-P

E se lo fai verrai fustigato! :-D

Ciao.
Marco.
P.S. :-

-- 
http://beri.it/ - Un blog
http://beri.it/i-miei-libri/ - Qualche libro
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] [OT] Re: Supporto ai caratteri accentati.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)

Marco beri:
Assolutamente sì! ;-)

È totalmente vietato! :-P

E se lo fai verrai fustigato! :-D

Ciao.
Marco.
P.S. :-

GB: Ah, :D Ecco! Lo immaginavo, SOBSOB!!!
- Battaglia! Dietro la lavagna!

- Ma prof? Noi abbiamo la lavagna a muro... appesa al muro!

- Appunto, dietro la lavagna!
:O 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Daniele Varrazzo

On 2013-05-08 16:41, Gollum1 wrote:

domanda forse banale, vedo che nelle librerie si parla di utf8, ma a
livello di interprete, se nel codice ho una stringa che contiene una
lettere accentata, l'interprete esce con un errore.

esiste un qualche modo per indicare all'interprete che il file è in
utf8, e quindi può contenere (nelle stringhe naturalmente) caratteri
strani?


C'hai preso: se un sorgente non è ascii lo devi dichiarare in cima: 
leggi


http://www.python.org/dev/peps/pep-0263/

Puoi usare:

# -*- coding: encoding name -*-

che piace a emacs, oppure

# vim: set fileencoding=encoding name :

che piace a vim.


--
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Marco Buttu

On 05/08/2013 05:41 PM, Gollum1 wrote:


esiste un qualche modo per indicare all'interprete che il file è in
utf8, e quindi può contenere (nelle stringhe naturalmente) caratteri
strani?


Ti hanno gia' detto tutto. Aggiungo che con Python 3.3 per default 
l'encoding del sorgente

è utf-8:

http://docs.python.org/3/tutorial/interpreter.html#source-code-encoding

Non solo per i letterali, ma per tutto il sorgente, quindi anche nomi e 
commenti:


$ more myfile.py
è = 33 # Questo è un commento
print(è)
$ python3.3 myfile.py
33

--
Marco Buttu

INAF Osservatorio Astronomico di Cagliari
Loc. Poggio dei Pini, Strada 54 - 09012 Capoterra (CA) - Italy
Phone: +39 070 71180255
Email: mbu...@oa-cagliari.inaf.it

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Marco Buttu

On 05/08/2013 06:39 PM, Marco Buttu wrote:

On 05/08/2013 05:41 PM, Gollum1 wrote:

esiste un qualche modo per indicare all'interprete che il file è in
utf8, e quindi può contenere (nelle stringhe naturalmente) caratteri
strani?


Ti hanno gia' detto tutto. Aggiungo che con Python 3.3 per default 
l'encoding del sorgente

è utf-8:

Python 3, in generale

--
Marco Buttu

INAF Osservatorio Astronomico di Cagliari
Loc. Poggio dei Pini, Strada 54 - 09012 Capoterra (CA) - Italy
Phone: +39 070 71180255
Email: mbu...@oa-cagliari.inaf.it

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Daniele Varrazzo

On 2013-05-08 16:57, Gabriel Battaglia (Kriyaban) wrote:


GB: attenzione, momento quasi storico... Tento la mia prima risposta
in lista!


Rullo di tamburi... :)


Prova a mettere una u davanti alla stringa da passare:
uPerchè così?
uPerchè di sì!


Questo è giusto, ma non basta. In che encoding è salvato il file? Se è 
in latin1 la tua i accentata sarà rappresentata dal byte 0xEC; se è in 
utf8 sarà la coppia di byte 0xC3 0xAC. Se non si conosce questa 
informazione diventa difficile sapere chsa voglia dire 0xEC: per esempio 
interpretata in un encoding russo (koi8-r) 0xEC rappresenta la lettera 
Л (la L maiuscola in cirillico). E così via, incasinando...


Il commento magico in cima ai sorgenti Python serve a specificare 
cosa vogliono dire i caratteri con valore ascii  127 nel sorgente. 
Senza di quello toccherebbe tirare a indovinare (come fa Notepad, 
regolarmente scazzando 
http://www.hoax-slayer.com/bush-hid-the-facts-notepad.html) mentre 
Python preferisce tirare un'eccezione nel dubbio.



--
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Gollum1
Il 08 maggio 2013 18:49, Daniele Varrazzo p...@develer.com ha scritto:
 On 2013-05-08 16:57, Gabriel Battaglia (Kriyaban) wrote:

 GB: attenzione, momento quasi storico... Tento la mia prima risposta
 in lista!


 Rullo di tamburi... :)


 Prova a mettere una u davanti alla stringa da passare:
 uPerchè così?
 uPerchè di sì!


 Questo è giusto, ma non basta. In che encoding è salvato il file? Se è in
 latin1 la tua i accentata sarà rappresentata dal byte 0xEC; se è in utf8
 sarà la coppia di byte 0xC3 0xAC. Se non si conosce questa informazione
 diventa difficile sapere chsa voglia dire 0xEC: per esempio interpretata in
 un encoding russo (koi8-r) 0xEC rappresenta la lettera Л (la L maiuscola
 in cirillico). E così via, incasinando...

 Il commento magico in cima ai sorgenti Python serve a specificare cosa
 vogliono dire i caratteri con valore ascii  127 nel sorgente. Senza di
 quello toccherebbe tirare a indovinare (come fa Notepad, regolarmente
 scazzando http://www.hoax-slayer.com/bush-hid-the-facts-notepad.html)
 mentre Python preferisce tirare un'eccezione nel dubbio.

il mio file risulta essere salvato in utf-8 (così almeno mi indica
kate, quando gli dico di salvare il file, e nelle sue impostazioni è
settato come set utf-8).

$file programma.py

Python script, UTF-8 Unicode text executable

quindi è utf-8 anche per il sistema.

se faccio partire l'interprete in konsole, e digito

print questa è una prova
questa è una prova

ottengo, quindi senza errori.

se in konsole lancio il mio programma.py:

$ ./programma.py
SyntaxError: Non-ASCII character '\xc3' in file ./programma.py

anche mettendo u davanti alla stringa.

ora vado a leggermi http://www.python.org/peps/pep-0263.html come è
suggerito nella riga che indica l'errore.
(non l'avevo notato prima di scrivervi)

Byez
--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Gollum1
ok... inserito:

# coding=utf-8

come seconda riga, ed ora l'interprete lo esegue correttamente, anche
senza mettere u davanti alle stringhe.

Grazie
Byez
--
Gollum1
Tesoro, dov'é il mio teoro...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)

Da: Daniele Varrazzo p...@develer.com
GB:

Prova a mettere una u davanti alla stringa da passare:
uPerchè così?
uPerchè di sì!


Questo è giusto, ma non basta. In che encoding è salvato il file? Se è in latin1 la tua i accentata sarà rappresentata dal byte 
0xEC; se è in utf8 sarà la coppia di byte 0xC3 0xAC. Se non si conosce questa informazione diventa difficile sapere chsa voglia 
dire 0xEC: per esempio interpretata in un encoding russo (koi8-r) 0xEC rappresenta la lettera Л (la L maiuscola in cirillico). E 
così via, incasinando...


Il commento magico in cima ai sorgenti Python serve a specificare cosa vogliono dire i caratteri con valore ascii  127 nel 
sorgente. Senza di quello toccherebbe tirare a indovinare (come fa Notepad, regolarmente scazzando 
http://www.hoax-slayer.com/bush-hid-the-facts-notepad.html) mentre Python preferisce tirare un'eccezione nel dubbio.


Grazie Daniele... Gollum1 però parlava di interprete, non di script... Io pensavo, forse non comprendendo bene la sua richiesta, che 
si riferisse a prove di codice da farsi al volo, direttamente a linea di comando... Contesto in cui, almeno penso, non si possa 
indicare una codifica. O sbaglio?

Bye!
G. 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Supporto ai caratteri accentati.

2013-05-08 Per discussione Marco Giusti
On Wed, May 08, 2013 at 07:17:17PM +0200, Gollum1 wrote:
 ok... inserito:
 
 # coding=utf-8
 
 come seconda riga, ed ora l'interprete lo esegue correttamente, anche
 senza mettere u davanti alle stringhe.

questo solo per un particolare allineamento planetario del sistema
solare
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] Conversioni su interi.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)

Oggi impero in lista...
Mi è venuta questa curiosità.
Se converto il mio nome con una base 36 ottengo:
n = gabriel
int(n, 36)
35452938477L

Il che è un affascinante quanto ingenuo metodo per criptare una stringa... Facciamo che consideriamo solo la parte affascinante 
della faccenda, ma poi, da

35452938477L, come ci torno a gabriel?
Qual è la funzione che converte un intero da una base all'altra, cioè da 36 a 
10 in questo caso?
G. 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Conversioni su interi.

2013-05-08 Per discussione Federico Figus
Ciao,

anch'io cercai una funzione che facesse la conversione da intero a base N,
ma non ebbi fortuna :(
Quindi per il momento l'unico è farsela da soli :)

import string
base = string.printable[:36]
n = int(gabriel, 36)
out = []
while n:
out.append(n%36)
n = n/36
print ''.join(base[l] for l in out)[::-1]

Naturalmente si può generalizzare con N al posto di 36.


2013/5/8 Gabriel Battaglia (Kriyaban) iz4...@libero.it

 Oggi impero in lista...
 Mi è venuta questa curiosità.
 Se converto il mio nome con una base 36 ottengo:
 n = gabriel
 int(n, 36)
 35452938477L

 Il che è un affascinante quanto ingenuo metodo per criptare una stringa...
 Facciamo che consideriamo solo la parte affascinante della faccenda, ma
 poi, da
 35452938477L, come ci torno a gabriel?
 Qual è la funzione che converte un intero da una base all'altra, cioè da
 36 a 10 in questo caso?
 G.
 __**_
 Python mailing list
 Python@lists.python.it
 http://lists.python.it/**mailman/listinfo/pythonhttp://lists.python.it/mailman/listinfo/python




-- 
*Federico Figus*
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Conversioni su interi.

2013-05-08 Per discussione Gabriel Battaglia (Kriyaban)

Ciao Federico.
Che bello il tuo codice, ha qualcosa che non avevo mai incontrato prima.
Ti va se ne parliamo un attimo?

***CODE HERE***
import string
# E... fin qui... :)

base = string.printable[:36]
# Potevo arrivarci ma ho guardato l'help di string.prontable... :) Vero, Python 
ha proprio le batterie incluse è?

n = int(gabriel, 36)
# Questa riga l'ho tolta perchè voglio che n venga ricevuta come parametro 
dalla funzione che mi sto scrivendo.

out = []
# Ok, qui prepariamo la lista contenitore.

while n:
   # Significa finchè n è vera, cioè diversa da 0, giusto?

   out.append(n%36)
   # Qui aggiungiamo il resto della divisione fra n e 36 che sarà sempre un 
intero compreso fra 0 e 35

   n = n/36
   # ok

print ''.join(base[l] for l in out)[::-1]
# Qui arriva la sorpresa... un ciclo for annidato dentro ad un...??
# me la spieghi meglio?

Io non sarei mai riuscito a produrre un tale concentrato di efficienza ed 
eleganza messe assieme.
G. 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] IPython, copiare negli appunti.

2013-05-08 Per discussione Riccardo Vianello
cercando online ho trovato un paio di moduli che offrono la
possibilità di copiare stringhe nella o dalla clipboard:

https://github.com/kennethreitz/xerox
http://coffeeghost.net/2010/10/09/pyperclip-a-cross-platform-clipboard-module-for-python/

(dovrebbero essere abbastanza simili tra loro, entrambi cross
platform, ma con qualche differenza nelle dipendenze; dei due ho
provato solo xerox, che è disponibile su pypi).

forse non è quello che avevi in mente, ma uno strumento del genere
potrebbe spostare il problema dal selezionare un contenuto mostrato a
video al catturare da codice il contenuto che ti serve e averlo a
disposizione in una stringa. Dalla stringa alla clipboard diventa una
semplice chiamata di funzione.

ciao,
riccardo
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Conversioni su interi.

2013-05-08 Per discussione Federico Figus
Ciao,

grazie per i complimenti ma è facile scrivere codice così leggero grazie
alla sintassi di python

print ''.join(base[l] for l in out)[::-1]

praticamente l'espressione base[l] for l in out non fa altro che creare un
generatore che itera sui moduli calcolati precedentemente, e poi prende
ogni l-esimo valore nella stringa base, questo generatore viene passato al
join che concatena tutti i valori resi dal generatore con la stringa vuota
che chiama il join, a questo punto hai la stringa che cercavi ma al
contrario, quindi usi il terzo campo dello slice  [inizio:fine:passo] per
creare una sequenza della stringa col passa al contrario.
Spero di essere stato chiaro, è la prima volta che partecipo a questa
mailing list :D
Comunque puoi trovare tutto sull documentazione in queste pagine
http://docs.python.org/2/tutorial/datastructures.html#list-comprehensions
http://docs.python.org/2/reference/expressions.html#calls

P.S. ci sono altri modi per farlo (anche in una riga sola) ma lascio a te
il divertimento ;)




2013/5/8 Gabriel Battaglia (Kriyaban) iz4...@libero.it

 Ciao Federico.
 Che bello il tuo codice, ha qualcosa che non avevo mai incontrato prima.
 Ti va se ne parliamo un attimo?

 ***CODE HERE***
 import string
 # E... fin qui... :)

 base = string.printable[:36]
 # Potevo arrivarci ma ho guardato l'help di string.prontable... :) Vero,
 Python ha proprio le batterie incluse è?


 n = int(gabriel, 36)
 # Questa riga l'ho tolta perchè voglio che n venga ricevuta come parametro
 dalla funzione che mi sto scrivendo.

 out = []
 # Ok, qui prepariamo la lista contenitore.

 while n:
# Significa finchè n è vera, cioè diversa da 0, giusto?

out.append(n%36)
# Qui aggiungiamo il resto della divisione fra n e 36 che sarà sempre
 un intero compreso fra 0 e 35

n = n/36
# ok


 print ''.join(base[l] for l in out)[::-1]
 # Qui arriva la sorpresa... un ciclo for annidato dentro ad un...??
 # me la spieghi meglio?

 Io non sarei mai riuscito a produrre un tale concentrato di efficienza ed
 eleganza messe assieme.

 G.
 __**_
 Python mailing list
 Python@lists.python.it
 http://lists.python.it/**mailman/listinfo/pythonhttp://lists.python.it/mailman/listinfo/python




-- 
*Federico Figus*
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python