Forum >> Principianti >> HELP!

Pagina: 1

Messaggio annotato da Daniele aka Palmux :
Questa discussione è stata spostata dalla categoria Blog.
un mio compagno di classe (un po' strano) si è messo in mente di fare un programma che scrive in verticale invece che in orizzontale (tipo matrix).... qualcuno mi può aiutare?
vi prego ci sto provando in tutti i modi ma non faccio niente di buono :-(

ss = "ciao sono Davide"
ll = 'io invece Ugo'
s = len(ss)
l=len(ll)

#aggiunge spazi vuoti alla stringa minorre cosi' da eguagliarle
if s > l:
z = s - l
ll += " "*z
elif l > s:
z = l - s
ss += " "*z

#----------------------------------------------------------------

fmt = "%s \n %s" % (ss,ll)
print (fmt)
if s - l >0:

for i in range(s) :
c = ss
d = ll

print (c + " " + d)
elif l - s >0:
for i in range(l) :
c = ss
d = ll
print (c + " " + d)

questo è quello che viene meglio, però voglio inserire più righe.....

vi prego!
Ciao bizzo, non è il caso di reinventare la ruota in questo caso, infatti c'è la libreria itertools che può aiutarti:

import itertools

testo = "Questa sera al Garden sbarcano per la prima e ultima volta in questa stagione i Los Angeles Lakers, ma i Celtics li divoreranno"

for x in itertools.izip_longest(*testo.split(), fillvalue=' '):
    print (' '.join(x))

output:
Q s a G s p l p e u v i q s i L A L m i C l d
u e l a b e a r   l o n u t   o n a a   e i i
e r   r a r   i   t l   e a   s g k     l   v
s a   d r     m   i t   s g     e e     t   o
t     e c     a   m a   t i     l r     i   r
a     n a         a     a o     e s     c   e
        n                 n     s ,     s   r
        o                 e                 a
                                            n
                                            n
                                            o



Ciao.
Daniele aka Palmux

P.S. Se il tuo sistema non ha la libreria itertools, sappi che devi installare iterutils.


Pagina: 1



Esegui il login per scrivere una risposta.