## od przemka
# Napisz program, który zapisze zawartość stringa do pliku "plik.txt"
with open("plik.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("Lubie pythona.\nserio.")
# Użyj trybu 'a' (append), aby dopisać kolejną linijkę tekstu do pliku "nowy.txt" bez nadpisywania jego zawartości.
with open("nowy.txt", "a") as plik:
plik.write("Nie no, zarcik.\nhehehehe.\nkoniecsmieszkow. \ndobranoc.")
# Napisz program, który czyta plik tekstowy linia po linii i każdy wiersz wypisuje na ekran z numerem linii.
with open("nowy.txt", "r") as plik:
for nr_linii, linijka in enumerate(plik, start=1):
print(f"Nr linii: {nr_linii}")
print(linijka)
#print(type(linijka))
# 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.
with open ("with.txt", "w") as plik:
plik.write("""
Siema siema
kurde witam
jak wam życie mija?
u mnie wszystko w porząsiu
no to nara.""")
# 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.
plik_csv="currency.csv"
with open (plik_csv, "r") as plik:
for linia in plik:
print(linia)
print(type(linia))
# Użyj biblioteki csv do wczytania "currency.csv". Sprawdź typ wczytanych danych po użyciu biblioteki csv.
import csv
plik_csv="currency.csv"
with open(plik_csv, "r") as plik:
reader=csv.reader(plik)
for linia in reader:
print(linia)
print("Typy linii: ", type(linia))
# 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).
lista=[{"imie":"Klaudia", "wiek":24}, {"imie":"Anna", "wiek":40}, {"imie":"Stefan", "wiek":60}]
with open("dane.csv", "w", encoding="utf-8") as plik:
for osoba in lista:
plik.write(f"{osoba["imie"]}, {osoba["wiek"]}\n")
with open("dane.csv", "r", encoding="utf-8") as plik:
print(plik.read())
# 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
import json
import os
kontakty = {"Alice" : "[email protected]",
"Bob" : "[email protected]",
"Anna": "[email protected]"
}
with open ("dane_kontaktowe.json", "w") as plik:
json.dump(kontakty, plik, indent=4)
with open("dane_kontaktowe.json", "r") as plik:
zawartosc=json.load(plik)
# print(zawartosc)
# print(type(zawartosc))
for imie in zawartosc:
print(f"{imie}: {zawartosc[imie]}")
# BONUS dla chętnych. Spróbuj samodzielnie napisać parser do plików csv (czyli program który zamieni plik tekstowy csv na listę list)
#cos tam od przemka
with open ("plik_z_danymi.json", "r") as plik:
print(plik.read())
print(type(plik.read()))
Książka kontaktowa
# imie / pseudonim
# dane kontaktowe (dowolne - tel, / email)
# dodawanie, aktualizacja, usuwanie
# wybor dziwnego wariantu
#quiz tez z jasonem
import json
import os
###do domu
PLIK_KONTAKTY="dane_kontaktowe.json"
kontakty = {}
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 - wczytywanie kontaktów z pliku")
print("8 - zapis kontaktów z pliku")
wybor = input("Podaj kod operacji: ")
if wybor == "1":
print("1")
imie=input("Dodaj imię: ")
email=input("Dodaj adres email: ")
kontakty[imie]=email
print("Dodano nowy kontakt")
elif wybor == "2":
print("2")
kontakt=input("Podaj nazwę kontaktu do aktualizacji: ")
while True:
if kontakt in kontakty.keys():
kontakty[kontakt]=input(f"Podaj nowe dane kontaktowe dla kontaktu {kontakt}")
print("Dane kontaktu zostały zaktualizowane.")
print("")
break
else:
kontakt=input("Nie ma takiego kontaktu. Spróbuj jeszcze raz.")
elif wybor == "3":
print("3")
kontakt=input("Podaj imię kontaktu do usunięcia: ")
while True:
if kontakt in kontakty.keys():
del kontakty[kontakt]
print(f"Usunięto kontakt o nazwie {kontakt}. ")
break
else:
kontakt=input("Nie ma takiego kontaktu. Spróbuj jeszcze raz: ")
elif wybor == "4":
print("4")
print("Oto lista wszystkich kontaktów:")
# print(kontakty)
#albo
for key in kontakty:
print(key)
print(kontakty[key])
elif wybor == "5":
print("5")
kontakt=input("Wybierz imię kontaktu do wydrukowania")
while True:
if kontakt in kontakty.keys():
print(f"Dane kontaktu {kontakt}: {kontakty[kontakt]}")
break
elif wybor == "6":
print("Koniec programu")
break
elif wybor =="7":
print("7")
if os.path.exists(PLIK_KONTAKTY):
with open(PLIK_KONTAKTY, "r", encoding="utf-8") as plik:
kontakty = json.load(plik)
print("Wgrano dane z pliku.")
else:
print("Brak pliku z danymi.")
elif wybor =="8":
print("8")
with open(PLIK_KONTAKTY, "w", encoding="utf-8") as plik:
json.dump(kontakty,plik,ensure_ascii=False, indent=2)
print("Zapisano dane do pliku.")
else:
print("Nie ma opcji o podanym kodzie.")