Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile
Lenovo ha lanciato il ThinkTab X11 rimettendo piede nel segmento dei tablet Android con il marchio Think dopo oltre un decennio di assenza. Il risultato è un dispositivo che prende una direzione precisa: massima dotazione funzionale, costruzione resistente, autonomia fuori dagli schemi
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI è l'appuntamento annuale con il quale l'azienda americana mostra quelle che sono le proprie novità dal versante datacenter. Tra piattaforma Helios, GPU Instinct MI455X e processori EPYC di sesta generazione tutto quello che serve per processare l'IA sempre più complessa ed esigente
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
BOOX Go 6 Gen II porta per la prima volta il supporto allo stilo su un e-reader da 6 pollici, affiancando 3 GB di RAM al collaudato Snapdragon 665 e un design rivisto con scocca posteriore a costolature. Su carta la proposta è interessante, ma Android 11 fuori supporto, l'assenza di un alloggiamento per il pennino e un'autonomia ridotta rispetto agli e-reader tradizionali sono i compromessi da accettare
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-03-2010, 10:49   #1
e-commerce84
Senior Member
 
Iscritto dal: Feb 2009
Messaggi: 700
[Python] Come passare dei parametri ad un mio script?

Ciao,
ho questo script che esplora un grafo. Lo script di fatto è una funzione che accetta un grafo rappresentato come una lista di liste e dovrebbe restituire il percorso compiuto durante l'esplorazione...ok...

Ora che ho tale funzione...dove e come gli posso passare una lista di liste? In pratica credo che dovrei dichiarare da qualche parte una lista di liste, passarla a tale funzione, mettere il risultato ritornato dalla funzione da qualche parte e stamparlo.
Non conosco Python...al corso di algoritmi ci hanno fornito tale listato...che devo fare per vederlo in funzione?

Codice:
# ALOGORITMO DI VISITA DI UN GRAFO G:
#
# G è rappresentato per mezzo di una come una lista (indicizzata) di liste di
# adiacenza.
# Per esempio: G = [[1,2,3,4], [0,2], [0,1,4], [0,4], [0,2,3]] è un grafo in cui
# G[0] = [1,2,3,4] è la lista di tutti i nodi vicini al nodo 0 --> Il nodo 0 ha
# come vicini i nodi: 1,2,3,4. Il nodo 1 ha come vicini i nodi: 0,2 e così via.


def visit(G):
   n = len(G)    # Mette in n il numero di elementi di G (numero nodi del grafo)
   A = set()     # Insieme dei vicini al nodo corrente che dovranno essere visitati
   A.add(0)      # Metti il nodo 0 in A, il nodo 0 è stato visitato

   # X rappresenta la lista degli n nodi che sono stati già visitati:
   # Se X[i] = TRUE, allora l'i-esimo nodo è già stato visitato, se X[i] = FALSE
   # significa che l'i-esimo nodo non è ancora stato visitato
   X = [False]*n                # Inizialmente non è stato visitato nessun nodo

   # T è un array di n locazioni, inizialmente ogni locazione è settata al valore
   # di default -1
   T = [-1]*n

   while len(A)>0:  # Finchè l'insieme dei nodi A contiene ancora almeno un nodo
      u = A.pop()   # estrai un nodo da A e mettilo nella variabile u

      # Setta a TRUE la u-esima posizione nella lista X dei nodi visitati
      X[u] = True

      # Per ogni elemento v presente nella u-esima sottolista della lista G ???
      for v in G[u]:
         if X[v] == False:  # Se il nodo in posizione v di X non è stato ancora visitato
            T[v] = u        # metti il valore di u nella posizione v di T
            A.add(v)        # Aggiungi il valore v all'insieme A
   return T             # Ritorna T al chiamante
Grazie
e-commerce84 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2010, 10:54   #2
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Come da commento, prova ad aggiungere in fondo:

G = [[1,2,3,4], [0,2], [0,1,4], [0,4], [0,2,3]]
print visit(G)

e ad eseguirlo con:
python script.py
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2010, 11:11   #3
e-commerce84
Senior Member
 
Iscritto dal: Feb 2009
Messaggi: 700
Quote:
Originariamente inviato da lovaz Guarda i messaggi
Come da commento, prova ad aggiungere in fondo:

G = [[1,2,3,4], [0,2], [0,1,4], [0,4], [0,2,3]]
print visit(G)

e ad eseguirlo con:
python script.py
mmm mi dà il seguente errore facendo come mi dici te:

andrea@andrea-laptop:~/NetBeansProjects/Algoritmi/src$ ls
algoritmi.py visitaGrafo.py
andrea@andrea-laptop:~/NetBeansProjects/Algoritmi/src$ python visitaGrafo.py
File "visitaGrafo.py", line 3
SyntaxError: Non-ASCII character '\xc3' in file visitaGrafo.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
e-commerce84 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2010, 11:23   #4
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
E' per via della e accentata

Prova ad aggiungere in testa al file la riga:

# -*- coding: iso-8859-15 -*-
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2010, 11:35   #5
e-commerce84
Senior Member
 
Iscritto dal: Feb 2009
Messaggi: 700
Quote:
Originariamente inviato da lovaz Guarda i messaggi
E' per via della e accentata

Prova ad aggiungere in testa al file la riga:

# -*- coding: iso-8859-15 -*-
Ok...ora gira...grazie...ora tocca capire se il risultato è corretto..

ma la e accentata non la vedo nel mio listato...che c'entra?
e-commerce84 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2010, 11:40   #6
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Come non la vedi, i commenti sono pieni di "è"
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2010, 11:51   #7
e-commerce84
Senior Member
 
Iscritto dal: Feb 2009
Messaggi: 700
Quote:
Originariamente inviato da lovaz Guarda i messaggi
Come non la vedi, i commenti sono pieni di "è"
ecco...pnesavo che i commenti non contassero proprio in quanto commenti...comunque...da quello che vedo lo script gira a cappella...bahhh
e-commerce84 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader Tascabile e con Android: BOOX Go 6 Gen II &egrav...
Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro Recensione Lenovo Idea Tab Plus: il tablet da 12...
Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea Oltre il contante e le crypto: tutto sull'Euro D...
Batterie a terra per Varta, bancarotta v...
Elon Musk: l'intelligenza artificiale su...
Ryzen 7 9800HX3D: il miglior processore ...
Google porta Gemini Live sui vecchissimi...
Corsair Platform:4 in offerta: la scriva...
Il creatore di Disagea sull'addio dei gi...
Fastweb + Vodafone entra nello SmartCity...
AI Act europeo: dal 2 agosto partono i n...
Da 1,3 a 10 miliardi in due mesi: chi è ...
Schede video RTX: NVIDIA comunica nuovi ...
GTA 6, i 60 fps stabili potrebbero esser...
Questa Smart TV QLED da 40 pollici con H...
Ring in sconto fino al 57%: videocitofon...
Pubblicità su Windows con i monit...
Azioni sul PC e coding solo chiedendo: O...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:52.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v