Töö failidega
Faili avamine
Faili saab avada käsuga:
f = open('file.txt', režiim)
'r'– lugemiseks'w'– kirjutamiseks (faili sisu kirjutatakse üle)'a'– lisamiseks faili lõppu
Faili lugemine
f.read(n)– loeb kuni n sümbolit või kogu faili, kui n puudubf.readline(n)– loeb ühe rea, maksimaalselt n sümbolitf.readlines(n)– loeb kuni n rida ja tagastab loendina
Näide – sisu lugemine loendisse:
def Loe_failist(fail):
with open(fail, 'r', encoding="utf-8-sig") as f:
return [rida.strip() for rida in f]
Faili kirjutamine
Näide – loendi salvestamine faili:
def Kirjuta_failisse(fail, jarjend):
with open(fail, 'w', encoding="utf-8-sig") as f:
for line in jarjend:
f.write(line + '\n')
Faili sulgemine
f.close()– sulgeb faili käsitsiwithkonstruktsioon – sulgeb automaatselt faili lõpus
Faili kustutamine:
import os
os.remove('fail.txt') # Kui fail eksisteerib
Failide nimekiri ja otsing:
from os import listdir
for failinimi in listdir("tee"):
if failinimi.endswith(".mp3"):
print("MP3 leitud!")
E-kirja saatmine
Vajalikud moodulid: smtplib, email.message
Sammud:
- Sõnumi koostamine:
from email.message import EmailMessage message = EmailMessage() message['Subject'] = 'Teema' message['From'] = 'saatja@email.com' message['To'] = 'saaja@email.com' message.set_content("Kirja sisu")
- SMTP-ühenduse loomine ja saatmine:
import smtplib server = smtplib.SMTP('smtp.gmail.com', 587) server.starttls() server.login(email, password) server.send_message(message) server.quit()
HTML-sisu lisamine:
with open('message.html', 'r') as file:
message.set_content(file.read(), subtype='html')
Pildi manustamine kirjale:
import imghdr
with open('image.jpg', 'rb') as file:
message.add_attachment(file.read(),
maintype='image',
subtype=imghdr.what(None, file.read()))
JSON
Mõiste: JSON on andmevorming, mida kasutatakse info salvestamiseks ja edastamiseks (nt sõnastikud, loendid, arvud, stringid, tõeväärtused, null).
Moodul:
import json
Tegevused:
- Python → JSON:
json.dumps(data)– teisendab andmed stringiksjson.dump(data, file)– kirjutab andmed otse faili
- JSON → Python:
json.loads(string)– teisendab JSON-stringi Python objektiksjson.load(file)– loeb ja teisendab faili sisu Python objektiks
Ilus vormindus:
json.dumps(data, indent=2, sort_keys=True)
Näide:
andmed = {"nimi": "Anna", "vanus": 25}
with open("andmed.json", "w") as f:
json.dump(andmed, f, indent=2)
with open("andmed.json", "r") as f:
print(json.load(f))
Näide – ilmateabe küsimine API abil:
import requests
linn = input("Linn: ")
url = f"http://api.openweathermap.org/data/2.5/weather?q={linn}&appid={api_key}&units=metric&lang=et"
andmed = requests.get(url).json()
if andmed["cod"] != "404":
print(f"Temperatuur: {andmed['main']['temp']} °C")

