Sužinokite, kaip įkelti ir išsaugoti duomenis tiesiai iš JES programos, naudodami šį nuoseklų vadovą.
JES yra programavimo aplinka, kurią galite naudoti norėdami rašyti, išbandyti ir paleisti kodą vietoje savo kompiuteryje. JES siūlo daugybę galimybių, pavyzdžiui, galimybę redaguoti nuotraukas, vaizdo įrašus ar kitą laikmeną.
Taip pat galite atlikti kitas JES užduotis, pvz., skaityti ar rašyti failus. Galite skaityti duomenis iš skirtingų failų tipų, įskaitant tekstinius ir CSV failus.
Kaip skaityti iš failo naudojant JES
Visą šių pavyzdžių šaltinio kodą galite peržiūrėti ir atsisiųsti iš GitHub saugykla.
Norėdami perskaityti failą JES, pirmiausia atidarykite jį, tada perskaitykite jo turinį ir išsaugokite jį kintamajame tolesniam apdorojimui.
Jei skaitote iš tekstinio failo, kiekvieną failo eilutę galite saugoti atskirai kaip masyvo elementą. Jei skaitote iš CSV failo, taip pat galite saugoti kiekvieno langelio reikšmę atskirai.
- Kompiuteryje atidarykite JES programinę įrangą. Programavimo lange sukurkite naują funkciją:
defskaityti iš failo():
- Naudokite funkciją pickAFile() ir paprašykite vartotojo pasirinkti failą. Galite lengvai rasti pagalbos dėl integruotų JES funkcijų norėdami sužinoti daugiau apie juos.
failas = pickAFile()
- Patvirtinkite failą, kad įsitikintumėte, jog vartotojas pasirinko tik TXT arba CSV failą:
jeigune file.endswith(".txt") irne file.endswith(".csv"):
spausdinti ("Klaida: palaikomi tik .txt ir .csv failai.")
grąžinti - Atidarykite pasirinktą failą naudodami open() funkciją. Pirmasis parametras yra failas, iš kurio skaitote. Antrasis parametras nurodo failo atidarymo režimą. Pavyzdžiui, „rt“ reiškia „skaityti failą“.
openFile = atidaryti (failas, "rt")
- Kai failas atidarytas, perskaitykite visą jo turinį. Išsaugokite failo turinį kintamajame:
allContent = atidarytasFile.read()
- Uždaryti failą:
openFile.close()
- Kintamajame „allContent“ yra viena eilutė, kurioje yra visas failo turinys. Naujos eilutės simbolis (\n) atskiria kiekvieną failo eilutę. Jei norite pasiekti kiekvieną eilutę atskirai, padalinkite eilutę ir išsaugokite kiekvieną eilutę kaip masyvo elementą:
jeigu file.endswith(".txt"):
eilutės = allContent.split("\n")
spausdinti (eilutės) - Jei skaitote iš CSV failo, galite atskirti kiekvieną eilutę, kad gautumėte vertę iš kiekvieno atskiro langelio. Kiekvienos CSV failo eilutės reikšmes atskirkite kableliais ir išsaugokite reikšmes dvigubame masyve. Masyvo struktūra atrodys panašiai: [[1,2,3], [4,5,6], [7,8,9]].
jeigu file.endswith(".csv"):
eilutės = allContent.split("\n")
csvData = []dėl eilė in eilutės:
jeigu (eilutė!= ''):
langeliai = row.split(",")
csvData.append([float (ląstelė) dėl ląstelė in ląstelės])spausdinti (csvData)
- Norėdami išbandyti programą, sukurkite naują tekstinį failą pavadinimu pavyzdys.txtir užpildykite jį tekstu:
Tai yra failo pradžia
Tai dar viena eilutė
Tai trečia eilutė
Tai failo pabaiga - Taip pat sukurti CSV failą, pavadink skaičiai.csvir užpildykite jį kai kuriais duomenimis:
- JES sąsajoje spustelėkite Įkelti programą mygtuką, esantį tarp programavimo lango ir komandinės eilutės:
- Komandinėje eilutėje paleiskite funkciją readFromFile ()
skaityti iš failo ()
- Naudodami failo raginimą eikite į vietą, kurioje išsaugojote failą sample.txt. Pasirinkite failą, kad jį atidarytumėte ir peržiūrėkite konsolėje išspausdintą turinį:
- Dar kartą komandų eilutėje paleiskite funkciją readFromFile(). Pasirinkite failą numbers.csv, kad peržiūrėtumėte konsolėje išspausdintą turinį, atskiriant kiekvieną langelį ir saugomą masyve:
Kaip rašyti į failą naudojant JES
Galite rašyti į CSV arba tekstinį failą naudodami funkciją write (). Galite atidaryti failą, kad galėtumėte pridėti arba rašyti. Pridėjus bus pridėtas esamas turinys, o rašymas perrašys visą esamą failo turinį.
Sukurkite naują funkciją ir naudokite ją rašydami į tekstinį ir CSV failą.
- Sukurkite naują funkciją, pavadintą writeToFile ():
defrašyti į failą():
- Naudokite funkciją pickAFile(), kad paraginti vartotoją pasirinkti failą:
failas = pickAFile()
- Atidarykite failą, kad galėtumėte pridėti:
openFile = atidaryti (failas, "prie")
- Arba, jei norite perrašyti visą failo turinį, įveskite „w“ kaip antrą argumentą:
openFile = atidaryti (failas, "w")
- Rašykite į failą. Norėdami pridėti kelias eilutes, naudokite „\n“, kad atskirtumėte turinį į eilutes, arba dar kartą naudokite funkciją Write():
jeigu file.endswith(".txt"):
openFile.write("\nTestavimas")
openFile.write("\nTesting1\nTesting2")
openFile.write("\nTesting3") - Norėdami įrašyti į CSV failą, parašykite visus vienos eilutės duomenis naudodami funkciją write () ir kiekvieno langelio reikšmes atskirkite kableliu:
jeigu file.endswith(".csv"):
openFile.write("\n12,34,56") - Įrašę failą uždarykite:
openFile.close()
spausdinti ("Parašyta į failą sėkmingai") - Spustelėkite ant Įkelti programą mygtuką, esantį tarp programavimo lango ir komandinės eilutės.
- Komandinėje eilutėje paleiskite funkciją writeToFile():
rašyti į failą ()
- Naudodami failo raginimą pasirinkite failą "sample.txt". Kai JES baigs rašyti į failą, atidarykite „sample.txt“, kad peržiūrėtumėte naujas prie failo pabaigos pridėtas eilutes:
- Iš naujo paleiskite funkciją writeToFile() komandinėje eilutėje. Atidarykite failą „numbers.csv“, kad peržiūrėtumėte naujas langelių reikšmes, pridėtas prie failo pabaigos.
Failų duomenų skaitymas ir rašymas naudojant JES
Duomenų įrašymas į failą yra labai naudinga funkcija, kurią galite naudoti, jei reikia įrašyti bet kokius duomenis programoje.
Išbandykite kitus būdus, kaip skaityti ar rašyti failus naudodami Python. To pavyzdžiai apima modulių, tokių kaip Pandas arba Openpyxl, naudojimą.