[:it]

max ernst
Lavorare con i file è il primo passo verso la programmazione batch. Tale termine è utilizzato per tutti quei processi che vengono eseguiti in background ossia senza accorgersi dal computer.
Ad esempio l’analisi della presenza di virus è un tipico processo batch, un altro potrebbe essere quello della deframmentazione dei dischi.
Un file può essere aperto per essere letto o per essere scritto; tale distinzione permette al sistema operativo di essere più veloce in quanto tale due processi presuppongono operazioni diverse.
Ecco i primi comandi per la gestione dei file:
miofile = open(‘pippo.txt’,’w’)
miofile.write(‘ciao sono francescon’)
miofile.close()
# mi dice come ho aperto il mio file ed il relativo nome
print miofile
miofile = open(‘pippo.txt’,’r’)
print miofile.read()
miofile.close()
Ecco un altro esempio molto più complesso ma ricco di spunti per la gestione di un file:
import string
true = 1
false = 0
def print_numbers(numbers):
print "Telephone Numbers:"
for x in numbers.keys():
print "Name: ",x," \tNumber: ",numbers[x]
print
def add_number(numbers,name,number):
numbers[name] = number
def lookup_number(numbers,name):
if numbers.has_key(name):
return "The number is "+numbers[name]
else:
return name+" was not found"
def remove_number(numbers,name):
if numbers.has_key(name):
del numbers[name]
else:
print name," was not found"
def load_numbers(numbers,filename):
in_file = open(filename,"r")
while true:
in_line = in_file.readline()
if in_line == "":
break
in_line = in_line[:-1]
[name,number] = string.split(in_line,",")
numbers[name] = number
in_file.close()
def save_numbers(numbers,filename):
out_file = open(filename,"w")
for x in numbers.keys():
out_file.write(x+","+numbers[x]+"\n")
out_file.close()
def print_menu():
print '1. Print Phone Numbers'
print '2. Add a Phone Number'
print '3. Remove a Phone Number'
print '4. Lookup a Phone Number'
print '5. Load numbers'
print '6. Save numbers'
print '7. Quit'
print
phone_list = {}
menu_choice = 0
print_menu()
while menu_choice != 7:
menu_choice = input("Type in a number (1-7):")
if menu_choice == 1:
print_numbers(phone_list)
elif menu_choice == 2:
print "Add Name and Number"
name = raw_input("Name:")
phone = raw_input("Number:")
add_number(phone_list,name,phone)
elif menu_choice == 3:
print "Remove Name and Number"
name = raw_input("Name:")
remove_number(phone_list,name)
elif menu_choice == 4:
print "Lookup Number"
name = raw_input("Name:")
print lookup_number(phone_list,name)
elif menu_choice == 5:
filename = raw_input("Filename to load:")
load_numbers(phone_list,filename)
elif menu_choice == 6:
filename = raw_input("Filename to save:")
save_numbers(phone_list,filename)
elif menu_choice == 7:
pass
else:
print_menu()
print "Goodbye"
[:en]
Lavorare con i file è il primo passo verso la programmazione batch. Tale termine è utilizzato per tutti quei processi che vengono eseguiti in background ossia senza accorgersi dal computer.
Ad esempio l’analisi della presenza di virus è un tipico processo batch, un altro potrebbe essere quello della deframmentazione dei dischi.
Un file può essere aperto per essere letto o per essere scritto; tale distinzione permette al sistema operativo di essere più veloce in quanto tale due processi presuppongono operazioni diverse.
Ecco i primi comandi per la gestione dei file:
miofile = open(‘pippo.txt’,’w’)
miofile.write(‘ciao sono francescon’)
miofile.close()
# mi dice come ho aperto il mio file ed il relativo nome
print miofile
miofile = open(‘pippo.txt’,’r’)
print miofile.read()
miofile.close()[:de]
Lavorare con i file è il primo passo verso la programmazione batch. Tale termine è utilizzato per tutti quei processi che vengono eseguiti in background ossia senza accorgersi dal computer.
Ad esempio l’analisi della presenza di virus è un tipico processo batch, un altro potrebbe essere quello della deframmentazione dei dischi.
Un file può essere aperto per essere letto o per essere scritto; tale distinzione permette al sistema operativo di essere più veloce in quanto tale due processi presuppongono operazioni diverse.
Ecco i primi comandi per la gestione dei file:
miofile = open(‘pippo.txt’,’w’)
miofile.write(‘ciao sono francescon’)
miofile.close()
# mi dice come ho aperto il mio file ed il relativo nome
print miofile
miofile = open(‘pippo.txt’,’r’)
print miofile.read()
miofile.close()[:]






![Rendered by QuickLaTeX.com \cfrac{\left(\cfrac{3}{4}-0,0\overline{3}\right)\cdot\cfrac{3}{43}+\left(2,\overline{4}-1,2\right)\cdot\cfrac{9}{7}-\cfrac{8}{5}}{\left[\cfrac{2,3-2,\overline{15}}{0,2+1,\overline{3}}\cdot\left(5+\cfrac{8}{49}\right)+\cfrac{3}{4}\right]:\left(1+\cfrac{1}{4}\right)}+\cfrac{4}{0,\overline{2}+1,2}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-02d65e94d0917de7b9476a0094a75a18_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\left(\cfrac{3}{4}-\cfrac{3}{90}\right)\cdot\cfrac{3}{43}+\left(\cfrac[l]{24-2}{9}-\cfrac[l]{12}{10}\right)\cdot\cfrac{9}{7}-\cfrac[l]{8}{5}}{\left[\cfrac{\cfrac{23}{10}-\cfrac{215-2}{99}}{\cfrac{2}{10}+\cfrac{13-1}{9}}\cdot\left(5+\cfrac{8}{49}\right)+\cfrac{3}{4}\right]:\left(\cfrac{5}{4}\right)}+\cfrac{4}{\cfrac{2}{9}+\cfrac{12}{10}}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-28424d303d5ce665cd63a30d935d0762_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\left(\cfrac{3}{4}-\cfrac{1}{30}\right)\cdot\cfrac{3}{43}+\left(\cfrac[l]{22}{9}-\cfrac[l]{6}{5}\right)\cdot\cfrac{9}{7}-\cfrac[l]{8}{5}}{\left[\cfrac{\cfrac{23}{10}-\cfrac{213}{99}}{\cfrac{1}{5}+\cfrac{12}{9}}\cdot\left(\cfrac{253}{49}\right)+\cfrac{3}{4}\right]\cdot\left(\cfrac{4}{5}\right)}+\cfrac{4}{\cfrac{20+108}{90}}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-06555bd3c875b67329729bd153b46c89_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\left(\cfrac{45-2}{60}\right)\cdot\cfrac{3}{43}+\left(\cfrac[l]{110-54}{45}\right)\cdot\cfrac{9}{7}-\cfrac[l]{8}{5}}{\left[\cfrac{\cfrac{23}{10}-\cfrac{71}{33}}{\cfrac{1}{5}+\cfrac{12}{9}}\cdot\left(\cfrac{253}{49}\right)+\cfrac{3}{4}\right]\cdot\left(\cfrac{4}{5}\right)}+\cfrac{4}{\cfrac{128}{90}}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-e3ec27b70796301863401cdf0ea8bf38_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\left(\cfrac{43}{60}\right)\cdot\cfrac{3}{43}+\left(\cfrac[l]{56}{45}\right)\cdot\cfrac{9}{7}-\cfrac[l]{8}{5}}{\left[\cfrac{\cfrac{759-710}{330}}{\cfrac{9+60}{45}}\cdot\left(\cfrac{253}{49}\right)+\cfrac{3}{4}\right]\cdot\left(\cfrac{4}{5}\right)}+4\cdot\cfrac{90}{128}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-9f9bb9ead11586bffd4188482c94e631_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\cfrac{1}{20}+\cfrac{8}{5}-\cfrac[l]{8}{5}}{\left[\cfrac{\cfrac{49}{330}}{\cfrac{69}{45}}\cdot\left(\cfrac{253}{49}\right)+\cfrac{3}{4}\right]\cdot\left(\cfrac{4}{5}\right)}+\cfrac{90}{32}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-8e9af0d21b6955edb5cbb40dca7c8a6b_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\cfrac{1}{20}}{\left[\cfrac{49}{330}\cdot\cfrac{45}{69}\cdot\left(\cfrac{253}{49}\right)+\cfrac{3}{4}\right]\cdot\left(\cfrac{4}{5}\right)}+\cfrac{90}{32}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-79d070175d19f76c39957311f4a0d823_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\cfrac{1}{20}}{\left[\cfrac{1}{2}+\cfrac{3}{4}\right]\cdot\left(\cfrac{4}{5}\right)}+\cfrac{90}{32}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-4df53411cdfe99cd68512672fe340b24_l3.png)
![Rendered by QuickLaTeX.com \cfrac[l]{\cfrac{1}{20}}{\left[\cfrac{5}{4}\right]\cdot\left(\cfrac{4}{5}\right)}+\cfrac{90}{32}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-ab6f29207a5418baa8c16b081937aeea_l3.png)
![Rendered by QuickLaTeX.com \cfrac{\left[\left(2+\cfrac{1}{2}\right)^{2}\cdot\left(3-\cfrac{4}{3}\right)^{2}\cdot\left(-1-\cfrac{1}{5}\right)^{2}\right]^{-1}:\left(-1+\cfrac{4}{5}\right)^{2}}{\cfrac{1}{2}\cdot\left(-\cfrac{1}{3}\right)^{-2}+\left(\cfrac{1}{4}\right)^{2}\cdot\left(1-\cfrac{3}{8}\right)^{-2}:\left(1-\cfrac{3}{5}\right)^{2}-\cfrac{5}{2}}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-3622f616b5ce34a9e5c15ffa6f238d29_l3.png)
![Rendered by QuickLaTeX.com \cfrac{\left[\left(\cfrac{5}{2}\right)^{2}\cdot\left(\cfrac{5}{3}\right)^{2}\cdot\left(-\cfrac{6}{5}\right)^{2}\right]^{-1}:\left(-\cfrac{1}{5}\right)^{2}}{\cfrac{1}{2}\cdot9+\cfrac{1}{4^{2}}\cdot\left(\cfrac{5}{8}\right)^{-2}:\left(\cfrac{2}{5}\right)^{2}-\cfrac{5}{2}}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-a6b6425e1de27a0a44f4b98eef018394_l3.png)
![Rendered by QuickLaTeX.com \cfrac{\left[\cfrac{5^{2}}{2^{2}}\cdot\cfrac{5^{2}}{3^{2}}\cdot\cfrac{6^{2}}{5^{2}}\right]^{-1}\cdot5^{2}}{\cfrac{9}{2}+\cfrac{1}{4^{2}}\cdot\cfrac{8^{2}}{5^{2}}\cdot\cfrac{5^{2}}{2^{2}}-\cfrac{5}{2}}](https://www.whymatematica.com/wp-content/ql-cache/quicklatex.com-d384a8e0549ec3dc52748f4931cbb4cf_l3.png)










