Strona główna Polish Python Coders Group
   Strona główna   Pomoc Zaloguj się Rejestracja  
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji

Aktualności: PyData Warsaw :: https://pydata.org/warsaw2018/
Szukaj Szukaj
Strony: [1]   Do dołu
Drukuj
Wątek: Szukanie brakujacych plikow + brakujacych danych  (Przeczytany 748 razy)
« : 06:43 12/02/18 »
grze Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 3


Siemanko,

Moj pierwszy post, uzylem szukajki, ale boje sie ze nawet nie jestem w stanie dobrze sformulowac tego z czym mam problem, wiec jesli cos przeoczylem to sorka!

Jestem super nowy jesli choci o pythona. Z programowaniem tez nie mialem do czynienia od ~10 lat, wiec jest lipa, a potrzebuje na szybko skonstruowac kod, ktory pozwoli mi z danej folderu z plikami (duza ilosc, wszystkie w formacie:
sta_ob_2018-02-04_19-00_00.txt
znalezc brakujace pliki. Powinien byc w folderze plik z kazdej kolejnej godziny, jesli nie ma, to python ma mi podac brakujacy plik (de facto brakujacy dzien i godzine). Mam do tego uzyc datetime na 100% i byc moze numpy arrays, albo ewentualnie while loop..

Druga sprawa to kod, ktory pozwoli mi "zajrzec" do kazdego z plikow i sprawdzenie czy dane sa ok. Poprawny plik ma dane typu:
2018-01-01_19-00-00, 0.161144437435,
a niepoprawny
2018-01-01_19-00-00, 9999,

Z gory dzieki, pozdro!

PS. Nie wiem czy to istotne, ale uzywam Spyder na Python 3.6
Zapisane
« Odpowiedz #1 : 16:21 12/02/18 »
Guaz Offline
Professional Python User

Zobacz profil
***

Reputacja: 41
Płeć: Mężczyzna
Wiadomości: 310


Jeśli faktycznie programowałeś, nawet odległy czas temu, struktury będą ci znane, tylko wystarczy sobie przypomnieć Uśmiech. Wszystko trzeba potraktować osobno i złożyć sensownie do kupy Chichot.

Otwieranie i odczyt plików:
https://docs.python.org/3/tutorial/inputoutput.html

Formatowanie daty:
https://docs.python.org/3/library/datetime.html

OS do zczytywania plików w lokalizacji:
https://docs.python.org/3/library/os.html

A jeśli potrzebujesz gotowca, żeby ktoś to zrobił za ciebie, zapraszam na PW Uśmiech.
Zapisane

Python 3.5.2 / Mint
« Odpowiedz #2 : 09:49 13/02/18 »
grze Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 3


OK, posiedzialem chwile i cos tam wyskrobalem

Kod
datetime_start = datetime.datetime(2018, 1, 1, 00, 00, 00) 
datetime_end = datetime.datetime(2018, 11, 5, 1, 00, 00)
 
 
n_hrs = (datetime_end - datetime_start).days*24 + 1
print (n_hrs)
 
datetime_temp = datetime_start
 
#initializing the array
datetime_axis_hr = []
 
#appending values to the array
for hr in range(0, n_hrs, 1):
   datetime_axis_hr.append(datetime_start + datetime.timedelta(hours=hr))
 
Do tego momentu jest ok. mam array z datami odpowiadajacymi wszystkim plikom.
Teraz chyba musze jakos przekonwertowac wszystkie te wartosci do string, po czym porownac z plikami.

Wydaje mi sie ze jakbym mial juz strings to moglbym uzyc tego ponizej, ale nie wiem jak to polaczyc.

Kod
file_name_temp = 'sta_ob_'+str(datetime_start_string)+'.txt'
file_name_temp_full_path = os.path.join(dir_work,file_name_temp)
 
if (os.path.isfile(file_name_temp_full_path)):
       print ('file exists %s  ' % (file_name_temp_full_path))
else:
       print ('missing file %s  ' % (file_name_temp_full_path))
 
 
Zapisane
Strony: [1]   Do góry
Drukuj
Skocz do:  

© 2007 - 2018 Polish Python Coders Group
Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | Theme by PixelSlot