CURS ONLINE INTERACTIV

Python 3

PENTRU ÎNCEPĂTORI


"Primul volum Python în română care pur și simplu m-a uimit. Foarte bine explicat și ușor de înțeles." (Alexandru Cosmin)

"Cea mai bună carte de Python din RO." (Iulian Geană)

"Livrare promptă! M-am pus pe treabă!" (Emil Ilie)

TOATE RECENZIILE
IDEI DE PROIECTE
PAG. 1 / 1
Buletinul meteo de pe Marte folosind limbajul Python
Acasă >>> STEM, aplicații interdisciplinare


Introducere

Marte este a patra planetă de la Soare în Sistemul nostru Solar. Este o planetă stâncoasă care este similară în multe privințe cu Pământul, dar este mult mai rece și mai uscată. Culoarea roșie a suprafeței marțiene se datorează oxidului de fier (ruginii) de pe suprafață. Marte are două mici luni, Phobos și Deimos, despre care se crede că sunt asteroizi capturați.

Atmosfera planetei Marte este foarte rarefiată și este compusă în mare parte din dioxid de carbon. Există de asemenea o cantitate mică de azot și argon în atmosferă. Apa există pe Marte, dar este în mare parte sub formă de gheață și există foarte puțină apă lichidă pe suprafață.

În ultimii ani a existat un interes crescut pentru Marte, deoarece este considerată una dintre cele mai probabile locuri din Sistemul Solar în care să se găsească dovezi de viață trecută sau prezentă. NASA și alte agenții spațiale au trimis mai multe nave spațiale pe Marte pentru a studia planeta și a căuta semne de viață. În plus, există proiecte fezabile de a trimite oameni pe Marte în viitor.

Vremea pe Marte

Vremea de pe Marte este destul de diferită de vremea de pe Pământ. Marte este mai departe de Soare decât Pământul, deci este mult mai rece. Temperatura medie pe Marte este de aproximativ -80°F (-62°C). Cu toate acestea, temperatura poate varia foarte mult în funcție de locul în care vă aflați pe planetă și de momentul zilei.

Atmosfera planetei Marte este de asemenea mult mai subțire decât atmosfera Pământului, ceea ce înseamnă că nu există multă vreme așa cum o cunoaștem pe Pământ. Nu există nori, iar în aer este foarte puțin vapor de apă, astfel că nu există ploaie.

Există însă vânturi pe Marte care pot atinge viteze de până la 100km/oră. Aceste vânturi pot crea furtuni de praf care pot acoperi întreaga planetă și dura luni de zile. Există și furtuni mai mici numite “dust devils”, care sunt cauzate de încălzirea suprafeței de către Soare. Acestea sunt similare tornadelor de pe Pământ, dar sunt compuse din praf și nisip în loc de aer.

National Geographic | Mega Dust Storms
În ansamblu, vremea de pe Marte este foarte dură și ostilă vieții așa cum o cunoaștem. Cu toate acestea, oamenii de știință studiază în continuare planeta și caracteristicile sale meteo pentru a afla mai multe despre modul în care s-a schimbat de-a lungul timpului și pentru a vedea dacă este posibil să existe viață pe planetă ori cât de ușor ar putea-o susține.

Date meteorologice reale pe Marte

Landerul InSight al NASA a efectuat măsurători continue ale vremii (temperatură, vânt, presiune) la suprafața planetei Marte în regiunea Elysium Planitia, o câmpie plată și netedă aproape de ecuator. Zi de zi a trimis informații extrem de prețioase pe care le putem accesa și astăzi. Misiunea InSight a fost declarată oficial încheiată abia în decembrie 2022 (după solul 1,440), când contactul radio a fost pierdut definitiv.



API-ul oferit de NASA furnizează date sumare pentru fiecare sol disponibil din ultimele șapte soluri (zile marțiene). Pe măsură ce mai multe date de pe un anumit sol erau descărcate de pe nava spațială (uneori cu câteva zile mai târziu), aceste valori erau preluate și, în consecință, actualizate pe măsură ce mai multe date sunt primite înapoi pe Pământ. În plus, trebuie remarcat faptul că datele privind vântul și alte date ale senzorului nu pot exista pentru anumite intervale de timp.

Datele oferite sunt furnizate sub formă de obiect în flux JSON. Să ne uităm puțin la codul Python de mai jos:

import json
import requests
url = "https://api.nasa.gov/insight_weather/?api_key=DEMO_KEY&feedtype=json&ver=1.0"
data = requests.get(url).json()
print(data) #afișăm datele brute


Important. Dacă nu ai instalate pachetele json și requests, vei obține sigur erori. Citește mai multe detalii [despre PIP].

Este o adevărată magie! Folosim doar 4 linii de cod și obținem date reale de pe Marte prin intermediul NASA:



După cum puteți observa, variabila "data" reține un dicționar Python (clasa dict) cu toate datele primite de la API-ul NASA folosind o cerere JSON. Folosind cheia potrivită, putem accesa fiecare zi din lista inclusă astfel:

print(data['675']) #ziua 1 din setul de date
print(data['676']) #ziua 2 din setul de date
...


Vom obține datele corespunzătoare pentru orice zi dorim din intervalul de timp disponibil direct de pe planeta Marte:



Mai sus am afișat pentru prima zi folosind data['675'] ce conține un dicționar. Datele conținute de acesta sunt structurate tot sumb forma unor alte dicționare, care se pot accesa ușor astfel:

print(data['675']['AT']) #ziua 1 din setul de date, dicționarul AT

...


AT conține date atmosferice, WD direcția vântului, PRE presiunea atmosferică, etc. Spre exemplu, pentru temperatura minimă din ziua 675 vom folosi data['675']['AT']['mn'].

Pentru a obține valorile minime ale temperaturii înregistrate în ultimele 7 zile, putem folosi codul:

import json
import requests
url = "https://api.nasa.gov/insight_weather/?api_key=DEMO_KEY&feedtype=json&ver=1.0"
data = requests.get(url).json()
for i in range(7):
    print(data[i]['AT']['mn'])




Mai multe detalii puteți obține citind documentația oficială NASA care se găsește [aici] în format pdf.
IDEI DE PROIECTE
Așadar, puteți importa date reale de pe Marte în proiectele dvs. Python! Avem la dispoziție date interesante pentru care putem crea rapoarte, diagrame, fișiere text separate, etc. Modulele numpy și matplotlib oferă opțiuni suplimentare pentru vizualizări interactive de date în Python și multe altele! Sunt toate gratuite și foarte interesante pentru orice persoană care învață limbajul de programare Python!

  1. Proiectul poate fi extins pentru a vizualiza tendințele temperaturii minime și maxime în decursul celor șapte soluri folosind diverse diagrame oferite de modulul Matplotlib.
  2. Elevii pot adăuga o funcționalitate de calcul statistic, determinând, de exemplu, temperatura medie generală înregistrată în perioada analizată.
  3. O altă extindere ar fi implementarea conversiei unităților de măsură, permițând afișarea temperaturilor în Fahrenheit sau Celsius la alegere.
  4. Codul poate fi îmbunătățit pentru a genera un raport structurat și citibil, înlocuind cheile tehnice (precum AT sau mn) cu denumiri complete.
  5. În cele din urmă, datele prelucrate pot fi integrate într-o interfață grafică simplă (GUI), creată cu biblioteca Tkinter, pentru o prezentare vizuală.
Citește și pagina ce prezintă [etapele unui proiect interdisciplinar].

Ce observăm? Păi, simplitatea lucrului în Python! Am importat rapid două module pentru a putea efectua cereri prin intermediul JSON. Am impus linkul spre API și am preluat apoi rezultatele ușor și rapid!

Recomandare. NASA oferă o multitudine de API care pot fi accesate via cod. Există unele limitări din punct de vedere al numărului de interogări per zi. Lista completă o găsiți folosind linkul de mai jos:
https://api.nasa.gov
Secțiunea s-a terminat.

Cărțile editurii noastre
O parte dintre manualele și culegerile de probleme se găsește și [în format electronic] securizat sub formă de fișier *.pdf.
 home   list  LECȚII   perm_identity   arrow_upward