CVS файл Список в списке Python - PullRequest
0 голосов
/ 01 мая 2020

У меня есть файл CVS со следующим списком. Я пытаюсь проверить определенную дату из этого списка, а затем прочитать значение.

[
 ['"2020-10-01"', '0', '4', '0.4', '6.8', '10.3', '11.9', '4.5', '7.2', '7.6', '13.8', '0.9', '9.8']
 ['"2020-10-02"', '0.1', '4.4', '2.6', '7.8', '10.1', '11.8', '4.4', '7', '7.4', '13.6', '0.8', '9.7']
 ['"2020-10-03"', '0', '4.9', '2.3', '7.2', '10', '11.6', '4.2', '6.9', '7.2', '13.4', '0.6', '9.5']
 ['"2020-10-04"', '1.1', '4.8', '1.8', '7.6', '9.8', '11.4', '4.1', '6.7', '6.9', '13.3', '0.5', '9.4']
]

Это то, что я пробовал

for row in List:
    for srow in row[0]:
        if date in srow:
        print(date[1])

Ответы [ 2 ]

0 голосов
/ 01 мая 2020

Просто измените '"гггг-мм-дд" на "гггг-мм-дд", и теперь это работает:

mylist = [['2020-10-01', '0', '4', '0.4', '6.8', '10.3', '11.9', '4.5', '7.2', '7.6', '13.8', '0.9', '9.8'],\
 ['2020-10-02', '0.1', '4.4', '2.6', '7.8', '10.1', '11.8', '4.4', '7', '7.4', '13.6', '0.8', '9.7'],\
 ['2020-10-03', '0', '4.9', '2.3', '7.2', '10', '11.6', '4.2', '6.9', '7.2', '13.4', '0.6', '9.5'],\
 ['2020-10-04', '1.1', '4.8', '1.8', '7.6', '9.8', '11.4', '4.1', '6.7', '6.9', '13.3', '0.5', '9.4']]



example_date = '2020-10-02'

for row in mylist:
  if row[0] == example_date:
      print('Found in: ' + str(row))
      break
0 голосов
/ 01 мая 2020

В следующем ответе предполагается, что вокруг даты нет двойных кавычек.

Вам нужно где-то получить дату поиска, например, пользовательский ввод, затем вам нужно искать включение в строку, не надо t итерация по row[0] это итерация по символам первого элемента

date = input("Please give a date: ")
List = [
    ['2020-10-01', '0', '4', '0.4', '6.8', '10.3', '11.9', '4.5', '7.2', '7.6', '13.8', '0.9', '9.8'],
    ['2020-10-02', '0.1', '4.4', '2.6', '7.8', '10.1', '11.8', '4.4', '7', '7.4', '13.6', '0.8', '9.7'],
    ['2020-10-03', '0', '4.9', '2.3', '7.2', '10', '11.6', '4.2', '6.9', '7.2', '13.4', '0.6', '9.5'],
    ['2020-10-04', '1.1', '4.8', '1.8', '7.6', '9.8', '11.4', '4.1', '6.7', '6.9', '13.3', '0.5', '9.4']
]
for row in List:
    if date in row:
        print(row)

# DEMO
Please give a date: 2020-10-01
['2020-10-01', '0', '4', '0.4', '6.8', '10.3', '11.9', '4.5', '7.2', '7.6', '13.8', '0.9', '9.8']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...