2015-04-25 6 views
0

Я хотел бы сравнить строки 1-3 и строки 9-16 из моей таблицы Excel. Это код, я прямо сейчас, но я только знаю, как сделать 1-3, а не 1-3 как и 9-16:Python excel Ряд разных строк

with open('Weather.csv', 'r') as file1: 
    val = list(csv.reader(file1))[i] 
    val1 = val[0:3] 

Я попытался это:

with open('Weather.csv', 'r') as file1: 
    val = list(csv.reader(file1))[i] 
    val1 = val[0:3][9:16] 

но это не сработает; Ничего не произошло.

+0

вы получаете любого из вне или сообщений об ошибках? –

+0

Нет Я не получаю сообщение об ошибке –

+0

'val1 = val [0: 3] + val [9:16]'? – jonrsharpe

ответ

1

Ну, не зная, какие данные содержится в вашем файле, я собираюсь предположить, что каждая строка содержит только 2 значения, разделенные запятой (погода, температура).

Так первый:

val1 = val[0:3][9:16] ничего не будет делать, потому что вы говорите, чтобы разрезать лист VAL между индексом 0 и 3, а затем кусочком, что фрагмент с началом индекса 9 до 16, в котором не будет существуют (потому что вы просто нарезали его 0: 3), поэтому вы получите пустую строку взамен.

Если вы хотите сравнить несколько строк с дозированием этих строк вместе, вы, вероятно, хотите сделать что-то вдоль линий:

compare1 = val[0:3] 
compare2 = val[9:16] 

И затем выполнить любую «Сравнение» Операции на уровне Вас» d хотел бы сделать оттуда. Я не уверен, почему вы это сделаете, вместо того, чтобы просто нарезать исходное значение val, но вы хотите для каждого желаемого сравнения.

Например, если вы знаете: строка 1 содержит «Нью-Йорк, 60» и строка 12 содержит «Сан-Франциско, 75»

А вы хотели бы, чтобы сравнить температуры этих городов вы можете бежать:

val[0][1] < val[11][1], который будет возвращать «True»

+0

да это прекрасный. Спасибо :) –

+0

Без проблем, рад помочь! – digitalsy