[Python] Variabili su file esterno

2022-07-10 Per discussione Marcello Ilardi
Salve a tutti,

in un mio programma, per creare file di configurazione, utilizzo il seguente
codice:


variabili = {}
variabili['IPADDRESS'] = '192.168.1.2'
variabili['NETMASK'] = '255.255.255.0'
variabili['GATEWAY'] = '192.168.1.1'
configurazione = (f'''
net.static.IP = {variabili['IPADDRESS']}
net.static.SubnetMask = {variabili['NETMASK']}
net.static.Gateway = {variabili['GATEWAY']}
''')
print(configurazione)

In questo modo mi vengono sostituite correttamente le variabili.
adesso ho la necessità, visto la lunghezza di 'configurazione' (più di 1000
righe) di creare un file dove metto la sola variabile 'configurazione' e
all'occorrenza leggere il file e impostare correttamente le variabili.
Il problema che leggendo da un file esterno non riesco a sostituite le
variabili tra grafe.

Nel file.txt  metto:
net.static.IP = {variabili['IPADDRESS']}
net.static.SubnetMask = {variabili['NETMASK']}
net.static.Gateway = {variabili['GATEWAY']}

il programma py:

variabili = {}
variabili['IPADDRESS'] = '192.168.1.2'
variabili['NETMASK'] = '255.255.255.0'
variabili['GATEWAY'] = '192.168.1.1'
with open((f'''file.txt'''), "r") as configurazione_tmp:
configurazione = configurazione_tmp.read()
print(configurazione)


Come posso risolvere?
Grazie a tutti,
Saluti
Marcello



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


Re: [Python] Variabili su file esterno

2022-07-10 Per discussione Giorgio Zoppi
Io userei yaml e un file const.py dove metti le constanti in UPPERCASE
prima ti tiri su yaml di default su un dictionary dopo rimpiazzi e
controlli a seconda dei casi. Non genererei un file..

Il Dom 10 Lug 2022, 20:17 Marcello Ilardi  ha scritto:

> Salve a tutti,
>
> in un mio programma, per creare file di configurazione, utilizzo il
> seguente
> codice:
>
>
> variabili = {}
> variabili['IPADDRESS'] = '192.168.1.2'
> variabili['NETMASK'] = '255.255.255.0'
> variabili['GATEWAY'] = '192.168.1.1'
> configurazione = (f'''
> net.static.IP = {variabili['IPADDRESS']}
> net.static.SubnetMask = {variabili['NETMASK']}
> net.static.Gateway = {variabili['GATEWAY']}
> ''')
> print(configurazione)
>
> In questo modo mi vengono sostituite correttamente le variabili.
> adesso ho la necessità, visto la lunghezza di 'configurazione' (più di 1000
> righe) di creare un file dove metto la sola variabile 'configurazione' e
> all'occorrenza leggere il file e impostare correttamente le variabili.
> Il problema che leggendo da un file esterno non riesco a sostituite le
> variabili tra grafe.
>
> Nel file.txt  metto:
> net.static.IP = {variabili['IPADDRESS']}
> net.static.SubnetMask = {variabili['NETMASK']}
> net.static.Gateway = {variabili['GATEWAY']}
>
> il programma py:
>
> variabili = {}
> variabili['IPADDRESS'] = '192.168.1.2'
> variabili['NETMASK'] = '255.255.255.0'
> variabili['GATEWAY'] = '192.168.1.1'
> with open((f'''file.txt'''), "r") as configurazione_tmp:
> configurazione = configurazione_tmp.read()
> print(configurazione)
>
>
> Come posso risolvere?
> Grazie a tutti,
> Saluti
> Marcello
>
>
>
> ___
> Python mailing list
> Python@lists.python.it
> https://lists.python.it/mailman/listinfo/python
>
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python


Re: [Python] Variabili su file esterno

2022-07-10 Per discussione Pietro Brunetti
Ciao,
Perdonami se dico una cavolata, ma sembra più il caso d'uso di un database.

Non ho mai usato MongoDB ma il tuo file JSON me lo ricorda.

Sono curioso di sapere se il resto della comunità è d'accordo con me.

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


Re: [Python] Variabili su file esterno

2022-07-10 Per discussione Giornale di Sistema

Verifica se ConfigParser fa al caso tuo.

GdS

Il 10/07/22 19:25, Marcello Ilardi ha scritto:

Salve a tutti,

in un mio programma, per creare file di configurazione, utilizzo il seguente
codice:


variabili = {}
variabili['IPADDRESS'] = '192.168.1.2'
variabili['NETMASK'] = '255.255.255.0'
variabili['GATEWAY'] = '192.168.1.1'
configurazione = (f'''
net.static.IP = {variabili['IPADDRESS']}
net.static.SubnetMask = {variabili['NETMASK']}
net.static.Gateway = {variabili['GATEWAY']}
''')
print(configurazione)

In questo modo mi vengono sostituite correttamente le variabili.
adesso ho la necessità, visto la lunghezza di 'configurazione' (più di 1000
righe) di creare un file dove metto la sola variabile 'configurazione' e
all'occorrenza leggere il file e impostare correttamente le variabili.
Il problema che leggendo da un file esterno non riesco a sostituite le
variabili tra grafe.

Nel file.txt  metto:
net.static.IP = {variabili['IPADDRESS']}
net.static.SubnetMask = {variabili['NETMASK']}
net.static.Gateway = {variabili['GATEWAY']}

il programma py:

variabili = {}
variabili['IPADDRESS'] = '192.168.1.2'
variabili['NETMASK'] = '255.255.255.0'
variabili['GATEWAY'] = '192.168.1.1'
with open((f'''file.txt'''), "r") as configurazione_tmp:
configurazione = configurazione_tmp.read()
print(configurazione)


Come posso risolvere?
Grazie a tutti,
Saluti
Marcello



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

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


Re: [Python] Variabili su file esterno

2022-07-10 Per discussione Pietro Brunetti
Verifica se ConfigParser fa al caso tuo.
>

Ma è fighissimo (mi intrometto di nuovo ^_^)

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


[Python] R: Variabili su file esterno

2022-07-10 Per discussione Marcello Ilardi
 

 

-Da: Python [mailto:python-boun...@lists.python.it] Per conto di Pietro 
Brunetti
Perdonami se dico una cavolata, ma sembra più il caso d'uso di un database.

 

Ciao, volevo evitare di mettere tutti i dati in un DB, ho dato un occhiata 
anche a ConfigParsen, ma non fa al caso mio. I file di configurazione sono un 
export di configurazione di un telefono IP. Guardando bene sono 3600 parametri 
per ogni modello di telefono, e sono circa 10 modelli di telefoni diversi. Ogni 
configurazione devo solo cambiare massimo 20/30 parametri. Con ConfigParsen o 
YAML è un casino. Devo mettere in pancia del main.py tutte le configurazioni di 
tutti i modelli.

 

Un alternativa che potrei utilizzare è creare un file modelloTel.py e poi fare 
un 

import modelloTel 

ma un problema che ho riscontrato è il passaggio delle variabili sul file 
importato.

 

 

Marcello

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


Re: [Python] R: Variabili su file esterno

2022-07-10 Per discussione Massimo Masson

Il 11/07/2022 08:42, Marcello Ilardi ha scritto:
[...]

ma un problema che ho riscontrato è il passaggio delle variabili sul 
file importato.


[...]

Hai provato a dare un'occhiata al modulo pickle?

https://docs.python.org/3.8/library/pickle.html

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