Wyszukanie elementu w tablicy wielowymiarowej

Wyszukanie elementu w tablicy wielowymiarowej
Effy_
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 6 lat
  • Lokalizacja:Warszawa
  • Postów:37
0

Mam odczytywany plik za pomocą funkcji:

def read_file_splitting(file_name):
files = open(file_name, 'rt')
#licznik elementow listy
counter=0
lines = []
while True:
line = files.readline()
lines.insert(counter, line.split("\t"))
counter+1
if not line:
break
files.close()
return lines

Następnie chcę skorzystać z funkcji:

def is_not_game_year(file_name, year):
line = list(read_file_splitting())
if str(year) in line:
return True
else:
return False

Funkcja zwraca mi za każdym razem false, mimo, że istnieje podany rok w pliku. Jak w inny sposób to wyszukać?

fasadin
to sie nie kompiluje
hurgadion
masz lekki no... bałagan w kodzie... np. wywołujesz funkcję read_file_splitting() bez parametru... lines jest listą... więc zamiast insert powinno być append... i może coś by jeszcze znalazł... jeżeli to możliwe, to stosuj wcięcia w kodzie, dużo lepiej się czyta i analizuje kod...
E1
  • Rejestracja:prawie 9 lat
  • Ostatnio:około 3 lata
  • Postów:27
0
  1. Fajnie by było, gdybyś użył formatowania swojego kodu.
  2. Operacje na plikach lepiej wykonywać za pomocą
Kopiuj
with open ('file', 'mode') as something: 
  1. Skoro pierwsza funkcja zwraca ci listę z zawartością pliku, to druga funkcja nie musi tego robić ponownie.
  2. W drugiej funkcji powinna być pętla for, coś w rodzaju:
Kopiuj
z=[['a','b','1'],['z','x','2']]

def dop(z):
  for i in z:
    if str(1) in i:
      return True
    else:
      return False

print(dop(z))

Komplikowanie jest proste, upraszczanie jest skomplikowane.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.