{"id":705,"date":"2025-06-06T02:06:52","date_gmt":"2025-06-05T23:06:52","guid":{"rendered":"https:\/\/com17699.wordpress.com\/?page_id=705"},"modified":"2025-10-21T06:31:03","modified_gmt":"2025-10-21T06:31:03","slug":"failidega_too","status":"publish","type":"page","link":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/","title":{"rendered":"Working with files"},"content":{"rendered":"\n<h3 class=\"wp-block-heading\"><strong>T\u00f6\u00f6 failidega<\/strong><\/h3>\n\n\n\n<p><strong>Faili avamine<\/strong><br>Faili saab avada k\u00e4suga:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">f = open('file.txt', re\u017eiim)\n<\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>'r'<\/code> \u2013 lugemiseks<\/li>\n\n\n\n<li><code>'w'<\/code> \u2013 kirjutamiseks (faili sisu kirjutatakse \u00fcle)<\/li>\n\n\n\n<li><code>'a'<\/code> \u2013 lisamiseks faili l\u00f5ppu<\/li>\n<\/ul>\n\n\n\n<p><strong>Faili lugemine<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>f.read(n)<\/code> \u2013 loeb kuni <em>n<\/em> s\u00fcmbolit v\u00f5i kogu faili, kui <em>n<\/em> puudub<\/li>\n\n\n\n<li><code>f.readline(n)<\/code> \u2013 loeb \u00fche rea, maksimaalselt <em>n<\/em> s\u00fcmbolit<\/li>\n\n\n\n<li><code>f.readlines(n)<\/code> \u2013 loeb kuni <em>n<\/em> rida ja tagastab loendina<\/li>\n<\/ul>\n\n\n\n<p><strong>N\u00e4ide \u2013 sisu lugemine loendisse<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">def Loe_failist(fail):\n    with open(fail, 'r', encoding=\"utf-8-sig\") as f:\n        return [rida.strip() for rida in f]\n<\/pre>\n\n\n\n<p><strong>Faili kirjutamine<\/strong><\/p>\n\n\n\n<p><strong>N\u00e4ide \u2013 loendi salvestamine faili<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">def Kirjuta_failisse(fail, jarjend):\n    with open(fail, 'w', encoding=\"utf-8-sig\") as f:\n        for line in jarjend:\n            f.write(line + '\\n')\n<\/pre>\n\n\n\n<p><strong>Faili sulgemine<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>f.close()<\/code> \u2013 sulgeb faili k\u00e4sitsi<\/li>\n\n\n\n<li><code>with<\/code> konstruktsioon \u2013 sulgeb automaatselt faili l\u00f5pus<\/li>\n<\/ul>\n\n\n\n<p><strong>Faili kustutamine<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">import os\nos.remove('fail.txt')  # Kui fail eksisteerib\n<\/pre>\n\n\n\n<p><strong>Failide nimekiri ja otsing<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">from os import listdir\nfor failinimi in listdir(\"tee\"):\n    if failinimi.endswith(\".mp3\"):\n        print(\"MP3 leitud!\")\n<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>E-kirja saatmine<\/strong><\/h3>\n\n\n\n<p><strong>Vajalikud moodulid<\/strong>: <code>smtplib<\/code>, <code>email.message<\/code><\/p>\n\n\n\n<p><strong>Sammud<\/strong>:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>S\u00f5numi koostamine<\/strong>:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">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\")<\/pre>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>SMTP-\u00fchenduse loomine ja saatmine<\/strong>: <\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">import smtplib server = smtplib.SMTP('smtp.gmail.com', 587) server.starttls() server.login(email, password) server.send_message(message) server.quit()<\/pre>\n\n\n\n<p><strong>HTML-sisu lisamine<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">with open('message.html', 'r') as file:\n    message.set_content(file.read(), subtype='html')\n<\/pre>\n\n\n\n<p><strong>Pildi manustamine kirjale<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">import imghdr\nwith open('image.jpg', 'rb') as file:\n    message.add_attachment(file.read(),\n                           maintype='image',\n                           subtype=imghdr.what(None, file.read()))\n<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>JSON<\/strong><\/h3>\n\n\n\n<p><strong>M\u00f5iste<\/strong>: JSON on andmevorming, mida kasutatakse info salvestamiseks ja edastamiseks (nt s\u00f5nastikud, loendid, arvud, stringid, t\u00f5ev\u00e4\u00e4rtused, null).<\/p>\n\n\n\n<p><strong>Moodul<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">import json\n<\/pre>\n\n\n\n<p><strong>Tegevused<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Python \u2192 JSON<\/strong>:\n<ul class=\"wp-block-list\">\n<li><code>json.dumps(data)<\/code> \u2013 teisendab andmed stringiks<\/li>\n\n\n\n<li><code>json.dump(data, file)<\/code> \u2013 kirjutab andmed otse faili<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>JSON \u2192 Python<\/strong>:\n<ul class=\"wp-block-list\">\n<li><code>json.loads(string)<\/code> \u2013 teisendab JSON-stringi Python objektiks<\/li>\n\n\n\n<li><code>json.load(file)<\/code> \u2013 loeb ja teisendab faili sisu Python objektiks<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Ilus vormindus<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">json.dumps(data, indent=2, sort_keys=True)\n<\/pre>\n\n\n\n<p><strong>N\u00e4ide<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">andmed = {\"nimi\": \"Anna\", \"vanus\": 25}\nwith open(\"andmed.json\", \"w\") as f:\n    json.dump(andmed, f, indent=2)\n\nwith open(\"andmed.json\", \"r\") as f:\n    print(json.load(f))\n<\/pre>\n\n\n\n<p><strong>N\u00e4ide \u2013 ilmateabe k\u00fcsimine API abil<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">import requests\n\nlinn = input(\"Linn: \")\nurl = f\"http:\/\/api.openweathermap.org\/data\/2.5\/weather?q={linn}&amp;appid={api_key}&amp;units=metric&amp;lang=et\"\nandmed = requests.get(url).json()\n\nif andmed[\"cod\"] != \"404\":\n    print(f\"Temperatuur: {andmed['main']['temp']} \u00b0C\")\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>T\u00f6\u00f6 failidega Faili avamineFaili saab avada k\u00e4suga: Faili lugemine N\u00e4ide \u2013 sisu lugemine loendisse: Faili kirjutamine N\u00e4ide \u2013 loendi salvestamine faili: Faili sulgemine Faili kustutamine: Failide nimekiri ja otsing: E-kirja saatmine Vajalikud moodulid: smtplib, email.message Sammud: HTML-sisu lisamine: Pildi manustamine kirjale: JSON M\u00f5iste: JSON on andmevorming, mida kasutatakse info salvestamiseks ja edastamiseks (nt s\u00f5nastikud, loendid, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-705","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Working with files - Portfolio Mariia Posvystak | eng<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Working with files - Portfolio Mariia Posvystak | eng\" \/>\n<meta property=\"og:description\" content=\"T\u00f6\u00f6 failidega Faili avamineFaili saab avada k\u00e4suga: Faili lugemine N\u00e4ide \u2013 sisu lugemine loendisse: Faili kirjutamine N\u00e4ide \u2013 loendi salvestamine faili: Faili sulgemine Faili kustutamine: Failide nimekiri ja otsing: E-kirja saatmine Vajalikud moodulid: smtplib, email.message Sammud: HTML-sisu lisamine: Pildi manustamine kirjale: JSON M\u00f5iste: JSON on andmevorming, mida kasutatakse info salvestamiseks ja edastamiseks (nt s\u00f5nastikud, loendid, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/\" \/>\n<meta property=\"og:site_name\" content=\"Portfolio Mariia Posvystak | eng\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-21T06:31:03+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/failidega_too\\\/\",\"url\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/failidega_too\\\/\",\"name\":\"Working with files - Portfolio Mariia Posvystak | eng\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/#website\"},\"datePublished\":\"2025-06-05T23:06:52+00:00\",\"dateModified\":\"2025-10-21T06:31:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/failidega_too\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/failidega_too\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/failidega_too\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Working with files\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/#website\",\"url\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/\",\"name\":\"Portfolio Mariia Posvystak | eng\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/mariiaposvystak24.thkit.ee\\\/wp\\\/eng\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Working with files - Portfolio Mariia Posvystak | eng","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/","og_locale":"en_US","og_type":"article","og_title":"Working with files - Portfolio Mariia Posvystak | eng","og_description":"T\u00f6\u00f6 failidega Faili avamineFaili saab avada k\u00e4suga: Faili lugemine N\u00e4ide \u2013 sisu lugemine loendisse: Faili kirjutamine N\u00e4ide \u2013 loendi salvestamine faili: Faili sulgemine Faili kustutamine: Failide nimekiri ja otsing: E-kirja saatmine Vajalikud moodulid: smtplib, email.message Sammud: HTML-sisu lisamine: Pildi manustamine kirjale: JSON M\u00f5iste: JSON on andmevorming, mida kasutatakse info salvestamiseks ja edastamiseks (nt s\u00f5nastikud, loendid, [&hellip;]","og_url":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/","og_site_name":"Portfolio Mariia Posvystak | eng","article_modified_time":"2025-10-21T06:31:03+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/","url":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/","name":"Working with files - Portfolio Mariia Posvystak | eng","isPartOf":{"@id":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/#website"},"datePublished":"2025-06-05T23:06:52+00:00","dateModified":"2025-10-21T06:31:03+00:00","breadcrumb":{"@id":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/failidega_too\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/"},{"@type":"ListItem","position":2,"name":"Working with files"}]},{"@type":"WebSite","@id":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/#website","url":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/","name":"Portfolio Mariia Posvystak | eng","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"dictionary-thumbnail":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"admin","author_link":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"T\u00f6\u00f6 failidega Faili avamineFaili saab avada k\u00e4suga: Faili lugemine N\u00e4ide \u2013 sisu lugemine loendisse: Faili kirjutamine N\u00e4ide \u2013 loendi salvestamine faili: Faili sulgemine Faili kustutamine: Failide nimekiri ja otsing: E-kirja saatmine Vajalikud moodulid: smtplib, email.message Sammud: HTML-sisu lisamine: Pildi manustamine kirjale: JSON M\u00f5iste: JSON on andmevorming, mida kasutatakse info salvestamiseks ja edastamiseks (nt s\u00f5nastikud, loendid,&hellip;","_links":{"self":[{"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/pages\/705","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/comments?post=705"}],"version-history":[{"count":1,"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/pages\/705\/revisions"}],"predecessor-version":[{"id":949,"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/pages\/705\/revisions\/949"}],"wp:attachment":[{"href":"https:\/\/mariiaposvystak24.thkit.ee\/wp\/eng\/wp-json\/wp\/v2\/media?parent=705"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}