Need help writing and reading with Python -
Need help writing and reading with Python -
at moment wrote code:
class device: naam_device = '' stroomverbuirk = 0 aantal_devices = int(input("geef het aantal devices op: ")) = aantal_devices x = 0 voorwerp = {} while > 0: voorwerp[x] = device() = - 1 x = x + 1 = 0 while < aantal_devices : voorwerp[i].naam_device = input("wat device %d voor een device: " % (i+1)) # hier moet nog gekeken worden naar afvang van foute invoer bijv. als gebruiker een string of char invoert ipv een float voorwerp[i].stroomverbruik = float(input("hoeveel ampére uw device?: ")) += 1 = 0 totaal = 0.0 ##test while print while < aantal_devices: print(voorwerp[i].naam_device,voorwerp[i].stroomverbruik) #dit totaal moet nog worden geschreven naar een bestand zodat je na 256 invoeren een totaal kan bepalen. totaal = totaal + voorwerp[i].stroomverbruik = + 1 print("totaal ampére = ",totaal) aantal_koelbox = int(input("hoeveel koelboxen neemt u mee?: ")) if aantal_koelbox <= 2 or aantal_koelbox > aantal_devices: if aantal_koelbox > aantal_devices: toestaan = input("deelt u de overige koelboxen met mede-deelnemers (ja/nee)?: ") if toestaan == "ja": print("uw gegevens worden opgeslagen! u bent succesvol geregistreerd.") if toestaan == "nee": print("uw gegevens worden niet opgeslagen! u voldoet niet aan de eisen.") else: print("uw gegevens worden niet opgeslagen! u voldoet niet aan de eisen.")
now want write value of totaal
file, , later when saved 256 of these inputs want write programme read 256 inputs , give sum of , split number 14. if help me on right track writing values , later read them can seek find out how lastly part.
but i've been trying 2 days , still found no solution writing , reading.
the tutorial covers nicely, mattdmo points out. i'll summarize relevant part here.
the key thought open file, write each totaal
in format, create sure file gets closed @ end.
what format? well, depends on data. have fixed-shape records, can store csv rows. have arbitrary python objects, can store pickles. in case, can away using simplest format @ all: line of text. long info single values can unambiguously converted text , back, , don't have newline or other special characters in them, works. so:
with open('thefile.txt', 'w') f: while < aantal_devices: print(voorwerp[i].naam_device,voorwerp[i].stroomverbruik) #dit totaal moet nog worden geschreven naar een bestand zodat je na 256 invoeren een totaal kan bepalen. totaal = totaal + voorwerp[i].stroomverbruik f.write('{}\n'.format(totaal)) = + 1
that's it. open
opens file, creating if necessary. with
makes sure gets closed @ end of block. write
writes line consisting of whatever's in totaal
, formatted string, followed newline character.
to read later simpler:
with open('thefile.txt') f: line in f: totaal = int(line) # stuff totaal
python
Comments
Post a Comment