Forum >> Principianti >> Stampare una variabile in un file.

Pagina: 1

Ho questo codice:
import networkx as nx

from networkx import k_clique_communities

G = nx.read_edgelist("network_cleaned.csv", delimiter=",")
cliques = list(nx.k_clique_communities(G, 6))
print cliques
out_file_com = open("clique.txt", "w")


Vorrei stampare la variabile cliques nel file clique.txt, come devo fare? Potete scrivermi il codice?

Grazie mille a tutti!
Ci sei quasi, mancano solo una manciata di righe:
out_file_com = open("clique.txt", "w")
out_file_com.write(cliques)
out_file_com.close()
Ciao.
Daniele
Non funziona il codice
out_file_com.write(cliques)
out_file_com.close()


TypeError: expected a character buffer object
out_file_com.write(cliques)
out_file_com.close()
TypeError: expected a character buffer object
La sintassi per la scrittura è quella, ma devi fare un po' di prove per scrivere il file e cercare di capire che inghippo hai:
1. Prova a vedere con type() che tipo di oggetto ti viene restituito per cliques;
2. Prova a trasformarlo in una stringa con str(), ad esempio:
out_file_com.write(str(cliques))
3. Inserisci nel tuo codice uno o più try/except per intercettare gli errori e comportarti di conseguenza.

Insomma sperimenta un po'.

Se sei disperata posta un esempio dei dati contenuti in network_cleaned.csv per capire meglio una possibile soluzione, considera che tu conosci la libreria meglio di tutti, io ad esempio non so nemmeno a che serve.

NOTA: Prima non avevo visto una cosa. Importi k_clique_communities
così:
from networkx import k_clique_communities
ma poi quando lo richiami all'interno del codice:
cliques = list(nx.k_clique_communities(G, 6))
Quindi togli quell'import oppure richiamalo nel tuo codice senza nx:
cliques = list(k_clique_communities(G, 6))
Meglio scrivere codice pulito.

Ciao.
Daniele
grazie Daniele, gentilissimo :)


Pagina: 1



Esegui il login per scrivere una risposta.