Profilo di Daniele aka Palmux

Nome Daniele aka Palmux
Indirizzo email ask@me
AvatarAvatar utenti
Messaggi1247
  • Re: LISTE DI LISTE
    Forum >> Programmazione Python >> Database
    Ciao caro, se ti posto una cosa del genere ti piace e la capisci?
    >>> from itertools import chain
    >>> from functools import reduce
    >>> mylist = [str(reduce(lambda a,b: a+b, [i for i in P if not isinstance(i, list)])) + str(i) for i in list(chain.from_iterable([i for i in P if isinstance(i, list)]))]
    ['abc', 'abd']
    
    Lo so, ho tirato via, ma adesso torniamo a ritroso tranquillo.

    A. Prima isolo la sublist che dovrà essere "ciclata" per aggiungere le altre lettere della tua lista, due, tre, mille, non importa il numero di quello che hai prima della lista annidata e quello che hai dentro. Forse capirai tutto senza problemi, tranne chain.from_iterable [link] che non fa nulla di complicato, accetta un singolo iterabile come argomento e li restituisce in un iterabile piatto (flat) contenente tutti gli elementi dell'iterabile in ingresso. Forse ti potrebbe essere ostico anche isinstance(i, list) [link], ma questo si spiega facilmente dal link che ti ho dato, controlla di fatto che tipo di oggetto stai trattando:
    >>> list(chain.from_iterable([i for i in P if isinstance(i, list)]
    ['c', 'd']
    


    B. Ora che abbiamo spiegato la seconda parte, quella con cui parte il calcolo, prendiamo grazie a reduce() e lambda() la somma dei valori contenuti prima della sublist, e visto che vogliamo manipolare stringhe, in queste caso questo produrrà:
    >>> str(reduce(lambda a,b: a+b, [i for i in P if not isinstance(i, list)]))
    'ab'
    


    C. Bene siamo alla fine, uniamo il tutto ed abbiamo il risultato cercato/voluto/sperato. Quel '+ str(i) for i in list(... ' non fa altro che accogliere l'output di A e unirlo a B.

    Bene ora credo si tutto più chiaro, se vuoi renderlo più semplice ti do un compito per casa, trasforma quanto ti ho scritto in "semplici" strumenti di controllo di flusso (if, for, ...) e posta il risultato, sarà più prolisso ma ugualmente soddisfacente.

    Cya e buon anno.




  • Re: Nuovo utente nel mondo python :D e ho già incontrate le prime incognite
    Forum >> Principianti
    Ciao caro e benvenuto. :birrame:

    Bravo, insisti sempre. Scoprire e risolvere i problemi da solo, è molto appagante. :ok:

    Ma non sempre ci riuscirai e tornerai qui sul forum, quindi ricorda solo che quando mostrerai il codice in Python l'indentazione è importante, quindi ricordati di usare il tasto code o dei sistemi di condivisione del codice stesso.

    Grazie e buono studio.
  • Re: Libro per iniziare
    Forum >> Principianti
    Ciao caro, benvenuto. :birrame:

    Confesso di non aver prestato particolare attenzione alle ultime uscite, magari ci sono dei testi più che validi che non ho mai visto. Personalmente trovo che il libro di Mark Lutz sia una lettura quasi imprescindibile, anche se è uscito un bel po' di tempo fa. Poi certo esistono tante altre pubblicazioni, si va a gusti, alcuni mi hanno parlato bene del libro di Dylan Penny che non ho avuto modo di vedere, quindi ti riporto solo una voce di corridoio, mentre ad altri piace il libro di Kenneth A. Lambert, che a me invece non piace troppo.

    Insomma c'è una grande varietà, nella nostra sezione dei libri puoi farti un'idea di alcuni titoli esistenti, anche se la lista non è aggiornata all'ultimissima pubblicazione.

    Buono studio.

  • Re: Inserimento facilitato prendendo dati da Excel con Tkinter
    Forum >> Programmazione Python >> GUI
    Ciao caro, non facilissima la cosa, ma nemmeno impossibile.


    Su due piedi ti direi che quando digiti il termine da cercare, potresti scatenare un evento che tramite una delle librerie di Python che lo consentono, va a leggere la cella in questione o le celle, non ho capito bene. Una volta ottenuto il valore o i valori, compilerai qualsiasi oggetto che vorrai.

    Se poi chiedessi a me, metterei i dati in un database ed interrogherei quello anziché un foglio di Excel, ma ognuno si fa male come crede. ;)

    Cya

  • Re: Tkinter non viene trovato
    Forum >> Programmazione Python >> GUI
    Ciao a te, ma come virus.py? :D

    Hai scritto un bel po' di cose che mi testimoniano la tua giovane età e la mancata volontà di sbattersi un minimo per risolvere il problema, che a dir del vero è semplicissimo.

    In realtà nella tua domanda hai già citato la risoluzione, non te ne sei accorto?

    Cya
  • Re: Aiuto Tkinter
    Forum >> Programmazione Python >> GUI
    Ciao caro, ti basta cambiare il nome del file, non utilizzando il nome della libreria.

    Prova e fai sapere.

    Cya
  • Re: TypeError: Dog() takes no arguments
    Forum >> Principianti
    Mm..scusa non ti seguo..
    Intende che devi scrivere __init__ e non __ini__ come hai fatto tu.

    Cya
  • Re: TypeError: area_ret() missing 2 required positional arguments
    Forum >> Principianti
    Ciao caro, semplicemente prova a trasformare la tua classe in:

    class Rettangolo:
        def __init__(self, base, altezza):
            self.base = base       
            self.altezza = altezza
    
        def area_ret(self):
            return self.base*self.altezza
    
        def perimetro_ret(self):
            return (self.base+self.altezza)*2


    A presto.
  • Re: che franaaaa!
    Forum >> Principianti
    Ciao caro, impara ad indentare bene il codice quando lo posti su risorse come questa, usando il tasto apposito oppure usando sistemi esterni come pastebin.

    Allora venendo a noi, trasforma la tua riga in:
    bob = turtle.Turtle()
    Vedrai che andrà.

    Cya
  • Re: importare e leggere file excel con python
    Forum >> Programmazione Python >> Files e Directory
    Prova a vedere questo.

    Cya