Python #8

Python #8
Photo by Jason Leung / Unsplash
# Napisz program, który zapisze zawartość stringa do pliku "plik.txt"
with open("pkik.txt", "w") as plik:
    plik.write("przykladowa tresc.")

# Napisz program, który otwiera plik tekstowy o nazwie "plik.txt" i wypisuje jego zawartość na ekran.
with open("plik.txt", "r") as plik:
    print(plik.read())

# Utwórz plik "nowy.txt" i zapisz do niego kilka linijek tekstu. Skorzystaj z funkcji open w trybie 'w'.
with open("plik.txt", "w") as plik:
    plik.write("przykladowa tresc.\nkolejnalinijka")

# Użyj trybu 'a' (append), aby dopisać kolejną linijkę tekstu do pliku "nowy.txt" bez nadpisywania jego zawartości.
with open("plik.txt", "a") as plik:
    plik.write("przykladowa tresc.\nkolejnalinijkaa")

# Napisz program, który czyta plik tekstowy linia po linii i każdy wiersz wypisuje na ekran z numerem linii.
with open("plik.txt", "r") as plik:
    for linijka in plik:
        print(linijka)
        print(type(linijka))

with open("plik.txt", "r") as plik:
    for nr_linii, linijka in enumerate(plik, start=1):
        print(f"nr. linii: (nr_linii)")
        print(linijka)
DOKOŃCZYĆ

# Skorzystaj z konstrukcji with open do otwarcia pliku "with.txt" i zapisania w nim paru linijek tekstu. Upewnij się, że plik będzie zamknięty automatycznie.


# Załaduj prosty plik "currency.csv" składający się z kilku wierszy i kolumn, następnie wypisz każdą linię na ekran. Sprawdź typ wczytanych danych.


# Użyj biblioteki csv do wczytania "currency.csv". Sprawdź typ wczytanych danych po użyciu biblioteki csv.


# Zgromadź listę kilku słowników (np. {"imie": "Jan", "wiek": 20}) i zapisz je jako plik CSV z użyciem funkcji open i context managera (bez bibliotek zewnętrznych).


# Stwórz słownik z danymi kontaktowymi (tak jak w naszym projekcie). Zapisz go do pliku "kontakty.json". W osobnej aplikacji spróbuj go wczytać. Użyj biblioteki json


# BONUS dla chętnych. Spróbuj samodzielnie napisać parser do plików csv (czyli program który zamieni plik tekstowy csv na listę list)

JSON

format JSON to nie słownik!
null to odpwiednik none

#####otwieranie:
import json

slownik = {
    "jan": ["111111111", "jakis opis"],
    "maria": ["111111111", "jakis opis"],
    "franek":["111111111", "jakis opis"],
    "ala":["111111111", "jakis opis"],
    "aaa": None
}

with open ("jsonsave.json", "w") as plik:
    json.dump(slownik, plik, indent=2)

#####wczytanie:
import json

with open("jsonsave.json", "r") as plik:
    zawartosc = json.load(plik)
    print(zawartosc)
    print(type(zawartosc))
for imie in zawartosc:
    print(f"{imie}: {zawartosc[imie]}")

print(f"Dane kontaktowe Jana: {zawartosc["jan"]}")
Pliki | Robisz.to Wiki
Tworzenie nowego folderu pod projekt Uruchom menadżer plików Przejdź do miejsca w którym chcesz…
kontakty = {"Alice" : "[email protected]",
"Bob" : "[email protected]"
}

while True:
    print("-=|Książka kontaktowa |=-")
    print("Wybierz operację:")
    print("1 - dodanie wpisu")
    print("2 - aktualizacja wpisu")
    print("3 - usunięcie wpisu")
    print("4 - wydruk wszystkich kontaktów")
    print("5 - wydruk konretntego kontaktu")
    print("6 - koniec programu")
    print("7 - wczytaj kontakty")
    print("8 - zapisz kontakty")

    wybor = input("Podaj kod operacji: ")

    if wybor == "1":
        print("wybrano 1")
        nazwa  = input("Podaj imię / pseudonim:")
        kontaktowe = input("Podaj dane kontaktowe: ")
        kontakty[nazwa] = kontaktowe
    elif wybor == "2":
        print("2")
    elif wybor == "3":
        print("3")
    elif wybor == "4":
        print(kontakty)
    elif wybor == "5":
        print("5")
    elif wybor == "6":
        print("Koniec programu")
    break
else:
    print("Nie ma opcji o podanym kodzie.")    





import json 
import os

PLIK_KONTAKTY = "jsonsave.json"

if os.path.exists(PLIK_KONTAKTY):
    with open(PLIK_KONTAKTY, "r") as plik:
        zawartosc = json.load(plik)

    for imie in zawartosc:
        print(f"{imie} : {zawartosc[imie]}")
else:
    print("plik z kontakami nie istnieje!")





import json 
import os

def zapis_z_ostrzezeniem(nazwa_pliku: str) -> None:
    if os.path.exists(nazwa_pliku):
        print("plik istnieje - zatwierdzenie napisze istniejace dane!")
        proceed = input("kontynuować t/n? ")

        if proceed.lower() == "t":
            with open(nazwa_pliku, "w") as plik_json:
                json.dump(nazwa_pliku, plik_json)
        else:
            print("nie zatwierdzono - plik nie został zapisany.")
    else:
        with open(nazwa_pliku, "w") as plik_json:
            json.dump(nazwa_pliku, plik_json)