Förbi Sharlene Khan

Lär dig hur du laddar och sparar data direkt från din JES-app med den här steg-för-steg-guiden.

Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision. Läs mer.

JES är en programmeringsmiljö som du kan använda för att skriva, testa och köra kod lokalt på din dator. JES erbjuder många funktioner såsom möjligheten att redigera foton, videor eller andra media.

Du kan också utföra andra uppgifter i JES som att läsa eller skriva till filer. Du kan läsa data från olika filtyper, inklusive textfiler och CSV-filer.

Hur man läser från en fil med JES

Du kan se och ladda ner hela källkoden för dessa exempel från GitHub-förråd.

För att läsa en fil i JES, öppna den först, läs sedan dess innehåll och spara den i en variabel för vidare bearbetning.

Om du läser från en textfil kan du lagra varje rad i filen separat som ett element i en array. Om du läser från en CSV-fil kan du också lagra varje cells värde separat.

instagram viewer
  1. Öppna JES-programvaran på din dator. Skapa en ny funktion i programmeringsfönstret:
    defreadFromFile():
  2. Använd funktionen pickAFile() för att be användaren att välja en fil. Du kan enkelt hitta hjälp för inbyggda JES-funktioner för att lära dig mer om dem.
    fil = pickAFile() 
  3. Validera filen för att se till att användaren endast har valt en TXT- eller CSV-fil:
    ominte file.endswith(".Text") ochinte file.endswith(".csv"):
    skriva ut("Fel: Endast .txt- och .csv-filer stöds.")
    lämna tillbaka
  4. Öppna den valda filen med funktionen open(). Den första parametern är filen som du läser från. Den andra parametern anger vilket läge som används för att öppna filen. Till exempel betyder "rt" "läs fil".
    openedFile = öppen (fil, "rt") 
  5. Medan filen är öppen, läs allt innehåll från den. Lagra filens innehåll i en variabel:
    allContent = openedFile.read()
  6. Stäng filen:
    openedFile.close()
  7. Variabeln "allContent" innehåller en enda sträng som innehåller allt innehåll i filen. Ett nyradstecken (\n) separerar varje rad i filen. Om du vill komma åt varje rad individuellt, dela strängen och lagra varje rad som ett element i en array:
    om file.endswith(".Text"):
    rader = allContent.split("\n")
    skriva ut (rader)
  8. Om du läser från en CSV-fil kan du ytterligare separera varje rad för att få värdet från varje enskild cell. För varje rad i CSV-filen separerar du värdena med kommatecken och lagrar värdena i en dubbelmatris. Strukturen för arrayen kommer att se ut så här: [[1,2,3], [4,5,6], [7,8,9]].
    om file.endswith(".csv"): 
    rader = allContent.split("\n")
    csvData = []

    för rad i rader:
    om (rad != ''):
    celler = row.split(",")
    csvData.append([float (cell) för cell i celler])

    print (csvData)

  9. För att testa programmet, skapa en ny textfil som heter sample.txt, och fyll den med lite text:
    Detta är början på filen
    Det här är en annan linje
    Detta är den tredje raden
    Detta är slutet på filen
  10. Också skapa en CSV-fil, namnge det nummer.csv, och fyll den med vissa data:
  11. På JES-gränssnittet, klicka på Ladda program knapp, placerad mellan programmeringsfönstret och kommandoraden:
  12. Kör funktionen readFromFile() på kommandoraden:
    readFromFile()
  13. Använd filprompten och navigera till var du lagrade filen sample.txt. Välj filen för att öppna den och visa innehållet som skrivs ut på konsolen:
  14. Kör funktionen readFromFile() igen i kommandotolken. Välj filen numbers.csv för att se innehållet som skrivs ut på konsolen, med varje cell separerad och lagrad i arrayen:

Hur man skriver till en fil med JES

Du kan skriva till en CSV- eller textfil med funktionen write(). Du kan antingen öppna filen för att lägga till eller skriva. Att lägga till kommer att lägga till det befintliga innehållet, medan skrivning kommer att skriva över allt befintligt innehåll i filen.

Skapa en ny funktion och använd den för att skriva till en textfil och en CSV-fil.

  1. Skapa en ny funktion som heter writeToFile():
    defwriteToFile():
  2. Använd funktionen pickAFile() för att uppmana användaren att välja en fil:
    fil = pickAFile() 
  3. Öppna filen för att lägga till:
    openedFile = öppen (fil, "på")
  4. Alternativt, om du vill skriva över allt innehåll i filen, ange "w" som det andra argumentet istället:
    openedFile = öppen (fil, "w")
  5. Skriv till filen. För att lägga till flera rader, använd "\n" för att dela upp innehållet i rader, eller använd funktionen write() igen:
    om file.endswith(".Text"):
    openedFile.write("\nTester")
    openedFile.write("\nTest1\nTest2")
    openedFile.write("\nTest3")
  6. För att skriva till en CSV-fil, skriv all data för en enda rad med funktionen write() och separera värdena för varje cell med ett kommatecken:
    om file.endswith(".csv"): 
    openedFile.write("\n12,34,56")
  7. Stäng filen efter att ha skrivit till den:
    openedFile.close()
    skriva ut("Skrev till filen framgångsrikt")
  8. Klicka på Ladda program knappen, placerad mellan programmeringsfönstret och kommandoraden.
  9. Kör funktionen writeToFile() i kommandotolken:
    writeToFile()
  10. Använd filprompten och välj filen "sample.txt". När JES har skrivit klart till filen, öppna "sample.txt" för att se de nya raderna som lagts till i slutet av filen:
  11. Kör om funktionen writeToFile() på kommandoraden. Öppna filen "numbers.csv" för att se de nya cellvärdena som läggs till i slutet av filen.

Läsa och skriva fildata med JES

Att skriva data till en fil är en extremt användbar funktion som du kan använda om du behöver spara data i ett program.

Utforska andra sätt att läsa eller skriva till filer med Python. Exempel på detta är att använda moduler som Pandas eller Openpyxl.

Prenumerera på vårt nyhetsbrev

Kommentarer

Dela med sigTweetDela med sigDela med sigDela med sig
Kopiera
E-post
Dela med sig
Dela med sigTweetDela med sigDela med sigDela med sig
Kopiera
E-post

Länken har kopierats till urklipp

Relaterade ämnen

  • Programmering
  • Programmering
  • Pytonorm

Om författaren

Sharlene Khan (88 publicerade artiklar)

Shay arbetar heltid som mjukvaruutvecklare och tycker om att skriva guider för att hjälpa andra. Hon har en kandidatexamen i IT och har tidigare erfarenhet av kvalitetssäkring och handledning. Shay älskar att spela och spela piano.