{"id":585,"date":"2020-12-28T20:07:17","date_gmt":"2020-12-28T20:07:17","guid":{"rendered":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/?post_type=chapter&#038;p=585"},"modified":"2020-12-28T20:07:17","modified_gmt":"2020-12-28T20:07:17","slug":"numpy-uhemootmeliste-jarjendite-elemendid","status":"publish","type":"chapter","link":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/chapter\/numpy-uhemootmeliste-jarjendite-elemendid\/","title":{"raw":"NumPy \u00fchem\u00f5\u00f5tmeliste j\u00e4rjendite elemendid","rendered":"NumPy \u00fchem\u00f5\u00f5tmeliste j\u00e4rjendite elemendid"},"content":{"raw":"<h2>J\u00e4rjendist elemendi v\u00f5tmine<\/h2>\r\n\u00dcks lihtsamaid j\u00e4rjendi operatsioone on j\u00e4rjendist elemendi v\u00f5tmine. \u00dchem\u00f5\u00f5tmelise j\u00e4rjendi puhul k\u00e4ib see samamoodi nagu Pythonis. J\u00e4rjendi nime taha tuleb lisada nurksulgude vahele soovitud elemendi indeks.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([1, 2, 3])\r\nprint(\"J\u00e4rjendi teine element: \", x[1])<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  J\u00e4rjendi teine element:\u00a0 2<\/pre>\r\n<span style=\"background-color: #f1c232\">\u00a0! <\/span><span style=\"background-color: #fff2cc\">\u00a0Meeldetuletuseks: indeksid algavad nullist.<\/span>\r\n<h2>J\u00e4rjendisse elemendi\/elementide lisamine<\/h2>\r\nNii Pythoni kui ka NumPy puhul k\u00e4ib elemendi lisamine <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">append<\/code> k\u00e4suga.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># NumPy j\u00e4rjendisse elementide lisamine\r\n\r\na = np.array([8, 9, 7, 10, 11, 12])\r\n\r\n# Lisame j\u00e4rjendisse a \u00fche elemendi\r\na = np.append(a, 4)\r\nprint(\"Uue elemendiga j\u00e4rjend: \", a)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  Uue elemendiga j\u00e4rjend:\u00a0 [ 8\u00a0 9\u00a0 7 10 11 12\u00a0 4]<\/pre>\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># Lisame j\u00e4rjendisse a kaks elementi\r\na = np.append(a, [4, 5])\r\nprint(\"Uute elementidega j\u00e4rjend: \", a)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  Uute elementidega j\u00e4rjend:\u00a0 [ 8\u00a0 9\u00a0 7 10 11 12\u00a0 4\u00a0 5]<\/pre>\r\n[h5p id=\"31\"]\r\n<h2>J\u00e4rjendist elemendi\/elementide otsimine<\/h2>\r\nNumPyl on j\u00e4rjendist elemendi otsimise jaoks olemas funktsioon <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">where<\/code>, mis tagastab otsitava elemendi indeksi. Vaatame n\u00e4idet. Olgu meil j\u00e4rjend <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">a<\/code>, mille elemendid on <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">[1 2 3 3 4]<\/code>. Leiame arvude 3 <strong>indeksid<\/strong>:\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">a = np.array([1, 2, 3, 3, 4])\r\n\r\n# Where argumendiks on vastav tingimusavaldis\r\n# K\u00f5ikide elementide indeksid, mis on v\u00f5rdsed 3-ga\r\nix = np.where(a == 3)\r\n\r\n# Indeksite v\u00e4ljastamine\r\nprint(ix)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  (array([2, 3]),)<\/pre>\r\nTulemuseks saame ennikulaadse struktuuri, kus on NumPy j\u00e4rjend leitud indeksitega. V\u00e4ga lihtsalt saab ka leitud indeksitega elemendid j\u00e4rjendist leida.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># Leiame leitud indeksitega elemendid\r\nprint(a[ix])<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  [3 3]<\/pre>\r\nTulemuseks on j\u00e4rjend leitud elementidega.\r\n<h2>Elementide sorteerimine<\/h2>\r\n\u00dchem\u00f5\u00f5tmeliste j\u00e4rjendite sorteerimisel saab kasutada sarnaselt Pythoni harilikule j\u00e4rjendile <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">sort<\/code> funktsiooni. N\u00e4iteks soovime elemendid j\u00e4rjestada kasvavalt vasakult paremale.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([0, 8, 5, 1, 3])\r\nprint(np.sort(x))<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  [0 1 3 5 8]<\/pre>\r\n<h2>Tehted j\u00e4rjendi elementidega<\/h2>\r\nSiin tuleb k\u00f5ige paremini v\u00e4lja NumPy eelis tavalise Pythoni ees. Oletame, et tahame teha kahe v\u00f5i enama j\u00e4rjendi elementide vahel j\u00e4rgnevaid tehteid: liitmine, lahutamine, korrutamine, korrutamine konstandiga, jagamine, astendamine. Kui Pythonis peab sellise tehte tegemiseks looma ts\u00fckli, siis NumPy puhul piisab \u00fchest reast. <strong>NB! See toimib nii ainult juhul, kui j\u00e4rjendid sisaldavad sama palju elemente<\/strong>. Vaatame n\u00e4idet, kus liidame igale j\u00e4rjendi elemendile 3 juurde:\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([1, 2, 3])\r\nprint(x + 3)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  [4 5 6]<\/pre>\r\nKa kahe j\u00e4rjendi liitmine on v\u00e4ga lihtne.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([1, 2, 3])\r\ny = np.array([10, 20, 30])\r\nprint(x + y)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 [11 22 33]<\/pre>\r\nSarnaselt saab j\u00e4rjendeid omavahel lahutada, korrutada, jagada, astendada.\r\n\r\nJ\u00e4rgnevalt teeme midagi veidi keerulisemalt. Olgu meil j\u00e4rjend, kus on inimeste kehakaalud kilogrammides ja j\u00e4rjend, kus on inimeste pikkused meetrites. Tahame arvutada nende j\u00e4rjendite p\u00f5hjal inimeste kehamassiindeksi (KMI). KMI leidmiseks jagatakse kehakaal pikkuse ruuduga (KMI = kehakaal \/ pikkus**2). NumPyga on see lihtne.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">kaal = np.array([66.4, 81.3, 54.0, 92.3])\r\npikkus = np.array([1.69, 1.81, 1.75, 1.95])\r\nKMI = kaal \/ pikkus**2\r\nprint(np.round(KMI, 1)) # \u00dcmardamine 1 koht p\u00e4rast koma<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 [23.2 24.8 17.6 24.3]<\/pre>\r\nN\u00fc\u00fcd aga vaatame olukorda, kus meil on antud j\u00e4rjend, mis koosneb nii positiivsetest kui ka negatiivsetest t\u00e4isarvudest. Me soovime teha programmi, mis v\u00e4ljastab k\u00f5ik negatiivsed t\u00e4isarvud j\u00e4rjendina. Pythonis peab selleks looma tulemuslisti. Sinna hakatakse lisama elemente algsest j\u00e4rjendist, mis vastavad meie avaldisele. Avaldis on <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">element &lt; 0<\/code>.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># Pythoni j\u00e4rjendist negatiivsete t\u00e4isarvude v\u00f5tmine\r\nb = [3, -1, -2, 4, -6, 8]\r\n\r\n# Tulemuslist\r\ntulemus = []\r\n\r\n# V\u00f5tame j\u00e4rjendist b j\u00e4rjest elemente\r\nfor element in b:\r\n    # Kui element on v\u00e4iksem nullist...\r\n    if element &lt; 0:\r\n    #...siis lisame selle elemendi tulemuslisti\r\n    tulemus.append(element)\r\n\r\n# V\u00e4ljastame tulemuslisti\r\nprint(\"Tulemuslist: \", tulemus)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  Tulemuslist:\u00a0 [-1, -2, -6]<\/pre>\r\nNumPy puhul on see palju lihtsam. Me saame avaldist kasutada otse j\u00e4rjendi peal, kirjutades avaldise nurksulgude vahele p\u00e4rast j\u00e4rjendi nime. Siin on aga oluline, et avaldises esineks j\u00e4rjendi nimi. Ehk kui me tahame saada j\u00e4rjendist <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">b<\/code> negatiivseid t\u00e4isarve, peab meie kontrollavaldis v\u00e4lja n\u00e4gema <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">b &lt; 0<\/code>. Samuti ei pea me looma tulemuslisti, kuna NumPy tagastab elemendid automaatselt j\u00e4rjendina.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">import numpy as np\r\n\r\n# NumPy j\u00e4rjendist negatiivsete t\u00e4isarvude v\u00f5tmine\r\nb = np.array([3, -1, -2, 4, -6, 8])\r\nprint(\"J\u00e4rjendi negatiivsed arvud: \", b[b &lt; 0])<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  J\u00e4rjendi negatiivsed t\u00e4isarvud:\u00a0 [-1 -2 -6]<\/pre>\r\nSarnaselt saab kasutada ka teisi tingimusavaldiste operaatoreid (<code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">==<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">&gt;<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">&gt;=<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">&lt;=<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">!=<\/code>).\r\n\r\n[h5p id=\"30\"]","rendered":"<h2>J\u00e4rjendist elemendi v\u00f5tmine<\/h2>\n<p>\u00dcks lihtsamaid j\u00e4rjendi operatsioone on j\u00e4rjendist elemendi v\u00f5tmine. \u00dchem\u00f5\u00f5tmelise j\u00e4rjendi puhul k\u00e4ib see samamoodi nagu Pythonis. J\u00e4rjendi nime taha tuleb lisada nurksulgude vahele soovitud elemendi indeks.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([1, 2, 3])\r\nprint(\"J\u00e4rjendi teine element: \", x[1])<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  J\u00e4rjendi teine element:\u00a0 2<\/pre>\n<p><span style=\"background-color: #f1c232\">\u00a0! <\/span><span style=\"background-color: #fff2cc\">\u00a0Meeldetuletuseks: indeksid algavad nullist.<\/span><\/p>\n<h2>J\u00e4rjendisse elemendi\/elementide lisamine<\/h2>\n<p>Nii Pythoni kui ka NumPy puhul k\u00e4ib elemendi lisamine <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">append<\/code> k\u00e4suga.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># NumPy j\u00e4rjendisse elementide lisamine\r\n\r\na = np.array([8, 9, 7, 10, 11, 12])\r\n\r\n# Lisame j\u00e4rjendisse a \u00fche elemendi\r\na = np.append(a, 4)\r\nprint(\"Uue elemendiga j\u00e4rjend: \", a)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  Uue elemendiga j\u00e4rjend:\u00a0 [ 8\u00a0 9\u00a0 7 10 11 12\u00a0 4]<\/pre>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># Lisame j\u00e4rjendisse a kaks elementi\r\na = np.append(a, [4, 5])\r\nprint(\"Uute elementidega j\u00e4rjend: \", a)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  Uute elementidega j\u00e4rjend:\u00a0 [ 8\u00a0 9\u00a0 7 10 11 12\u00a0 4\u00a0 5]<\/pre>\n<div id=\"h5p-31\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-31\" class=\"h5p-iframe\" data-content-id=\"31\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"NumPy \u00fchem\u00f5\u00f5tmelisse j\u00e4rjendisse lisamine\"><\/iframe><\/div>\n<\/div>\n<h2>J\u00e4rjendist elemendi\/elementide otsimine<\/h2>\n<p>NumPyl on j\u00e4rjendist elemendi otsimise jaoks olemas funktsioon <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">where<\/code>, mis tagastab otsitava elemendi indeksi. Vaatame n\u00e4idet. Olgu meil j\u00e4rjend <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">a<\/code>, mille elemendid on <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">[1 2 3 3 4]<\/code>. Leiame arvude 3 <strong>indeksid<\/strong>:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">a = np.array([1, 2, 3, 3, 4])\r\n\r\n# Where argumendiks on vastav tingimusavaldis\r\n# K\u00f5ikide elementide indeksid, mis on v\u00f5rdsed 3-ga\r\nix = np.where(a == 3)\r\n\r\n# Indeksite v\u00e4ljastamine\r\nprint(ix)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  (array([2, 3]),)<\/pre>\n<p>Tulemuseks saame ennikulaadse struktuuri, kus on NumPy j\u00e4rjend leitud indeksitega. V\u00e4ga lihtsalt saab ka leitud indeksitega elemendid j\u00e4rjendist leida.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># Leiame leitud indeksitega elemendid\r\nprint(a[ix])<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  [3 3]<\/pre>\n<p>Tulemuseks on j\u00e4rjend leitud elementidega.<\/p>\n<h2>Elementide sorteerimine<\/h2>\n<p>\u00dchem\u00f5\u00f5tmeliste j\u00e4rjendite sorteerimisel saab kasutada sarnaselt Pythoni harilikule j\u00e4rjendile <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">sort<\/code> funktsiooni. N\u00e4iteks soovime elemendid j\u00e4rjestada kasvavalt vasakult paremale.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([0, 8, 5, 1, 3])\r\nprint(np.sort(x))<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  [0 1 3 5 8]<\/pre>\n<h2>Tehted j\u00e4rjendi elementidega<\/h2>\n<p>Siin tuleb k\u00f5ige paremini v\u00e4lja NumPy eelis tavalise Pythoni ees. Oletame, et tahame teha kahe v\u00f5i enama j\u00e4rjendi elementide vahel j\u00e4rgnevaid tehteid: liitmine, lahutamine, korrutamine, korrutamine konstandiga, jagamine, astendamine. Kui Pythonis peab sellise tehte tegemiseks looma ts\u00fckli, siis NumPy puhul piisab \u00fchest reast. <strong>NB! See toimib nii ainult juhul, kui j\u00e4rjendid sisaldavad sama palju elemente<\/strong>. Vaatame n\u00e4idet, kus liidame igale j\u00e4rjendi elemendile 3 juurde:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([1, 2, 3])\r\nprint(x + 3)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  [4 5 6]<\/pre>\n<p>Ka kahe j\u00e4rjendi liitmine on v\u00e4ga lihtne.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">x = np.array([1, 2, 3])\r\ny = np.array([10, 20, 30])\r\nprint(x + y)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 [11 22 33]<\/pre>\n<p>Sarnaselt saab j\u00e4rjendeid omavahel lahutada, korrutada, jagada, astendada.<\/p>\n<p>J\u00e4rgnevalt teeme midagi veidi keerulisemalt. Olgu meil j\u00e4rjend, kus on inimeste kehakaalud kilogrammides ja j\u00e4rjend, kus on inimeste pikkused meetrites. Tahame arvutada nende j\u00e4rjendite p\u00f5hjal inimeste kehamassiindeksi (KMI). KMI leidmiseks jagatakse kehakaal pikkuse ruuduga (KMI = kehakaal \/ pikkus**2). NumPyga on see lihtne.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">kaal = np.array([66.4, 81.3, 54.0, 92.3])\r\npikkus = np.array([1.69, 1.81, 1.75, 1.95])\r\nKMI = kaal \/ pikkus**2\r\nprint(np.round(KMI, 1)) # \u00dcmardamine 1 koht p\u00e4rast koma<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 [23.2 24.8 17.6 24.3]<\/pre>\n<p>N\u00fc\u00fcd aga vaatame olukorda, kus meil on antud j\u00e4rjend, mis koosneb nii positiivsetest kui ka negatiivsetest t\u00e4isarvudest. Me soovime teha programmi, mis v\u00e4ljastab k\u00f5ik negatiivsed t\u00e4isarvud j\u00e4rjendina. Pythonis peab selleks looma tulemuslisti. Sinna hakatakse lisama elemente algsest j\u00e4rjendist, mis vastavad meie avaldisele. Avaldis on <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">element &lt; 0<\/code>.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># Pythoni j\u00e4rjendist negatiivsete t\u00e4isarvude v\u00f5tmine\r\nb = [3, -1, -2, 4, -6, 8]\r\n\r\n# Tulemuslist\r\ntulemus = []\r\n\r\n# V\u00f5tame j\u00e4rjendist b j\u00e4rjest elemente\r\nfor element in b:\r\n    # Kui element on v\u00e4iksem nullist...\r\n    if element &lt; 0:\r\n    #...siis lisame selle elemendi tulemuslisti\r\n    tulemus.append(element)\r\n\r\n# V\u00e4ljastame tulemuslisti\r\nprint(\"Tulemuslist: \", tulemus)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  Tulemuslist:\u00a0 [-1, -2, -6]<\/pre>\n<p>NumPy puhul on see palju lihtsam. Me saame avaldist kasutada otse j\u00e4rjendi peal, kirjutades avaldise nurksulgude vahele p\u00e4rast j\u00e4rjendi nime. Siin on aga oluline, et avaldises esineks j\u00e4rjendi nimi. Ehk kui me tahame saada j\u00e4rjendist <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">b<\/code> negatiivseid t\u00e4isarve, peab meie kontrollavaldis v\u00e4lja n\u00e4gema <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">b &lt; 0<\/code>. Samuti ei pea me looma tulemuslisti, kuna NumPy tagastab elemendid automaatselt j\u00e4rjendina.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">import numpy as np\r\n\r\n# NumPy j\u00e4rjendist negatiivsete t\u00e4isarvude v\u00f5tmine\r\nb = np.array([3, -1, -2, 4, -6, 8])\r\nprint(\"J\u00e4rjendi negatiivsed arvud: \", b[b &lt; 0])<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  J\u00e4rjendi negatiivsed t\u00e4isarvud:\u00a0 [-1 -2 -6]<\/pre>\n<p>Sarnaselt saab kasutada ka teisi tingimusavaldiste operaatoreid (<code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">==<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">&gt;<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">&gt;=<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">&lt;=<\/code>, <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">!=<\/code>).<\/p>\n<div id=\"h5p-30\">\n<div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-30\" class=\"h5p-iframe\" data-content-id=\"30\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"Numpy j\u00e4rjendite v\u00e4ljund\"><\/iframe><\/div>\n<\/div>\n","protected":false},"author":16,"menu_order":3,"template":"","meta":{"pb_show_title":"on","pb_short_title":"","pb_subtitle":"","pb_authors":[],"pb_section_license":""},"chapter-type":[],"contributor":[],"license":[],"class_list":["post-585","chapter","type-chapter","status-publish","hentry"],"part":90,"_links":{"self":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/585","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters"}],"about":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/types\/chapter"}],"author":[{"embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/users\/16"}],"version-history":[{"count":1,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/585\/revisions"}],"predecessor-version":[{"id":589,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/585\/revisions\/589"}],"part":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/parts\/90"}],"metadata":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/585\/metadata\/"}],"wp:attachment":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/media?parent=585"}],"wp:term":[{"taxonomy":"chapter-type","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapter-type?post=585"},{"taxonomy":"contributor","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/contributor?post=585"},{"taxonomy":"license","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/license?post=585"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}