Подтвердить что ты не робот

Как сравнить два массива в python?

Как сравнить два массива в python?

date = "Thu Sep 16 13:14:15 CDT 2010" 
sdate = "Thu Sep 16 14:14:15 CDT 2010" 
dateArr = [] dateArr = date.split() 
sdateArr = [] sdateArr = sdate.split() 

Теперь я хочу сравнить эти два массива, которые, как мне кажется, разделяют массив возвратов. Мы можем сделать простое сравнение в Java, например dateArr[i] == sdateArr[i], но как мы можем это сделать в Python?

Извините за беспокойство Пожалуйста, помогите

4b9b3361

Ответ 1

Вы всегда можете сделать это:

a=[1,2,3]
b=['a','b']
c=[1,2,3,4]
d=[1,2,3]

a==b    #returns False
a==c    #returns False
a==d    #returns True

Ответ 2

Если вы имеете в виду списки, попробуйте ==:

l1 = [1,2,3]
l2 = [1,2,3,4]

l1 == l2 # False

Если вы имеете в виду array:

l1 = array('l', [1, 2, 3])
l2 = array('d', [1.0, 2.0, 3.0])
l1 == l2 # True
l2 = array('d', [1.0, 2.0, 3.0, 4.0])
l1 == l2 # False

Если вы хотите сравнить строки (за ваш комментарий):

date_string  = u'Thu Sep 16 13:14:15 CDT 2010'
date_string2 = u'Thu Sep 16 14:14:15 CDT 2010'
date_string == date_string2 # False

Ответ 3

Учитывая код, который вы предоставили в комментариях, я предполагаю, что вы хотите сделать это:

>>> dateList = "Thu Sep 16 13:14:15 CDT 2010".split()
>>> sdateList = "Thu Sep 16 14:14:15 CDT 2010".split()
>>> dateList == sdataList
false

Метод split строки возвращает список. Список в Python сильно отличается от массива. == в этом случае сравнивает по элементам два списка и возвращает, если все их элементы равны, а число и порядок элементов одинаковы. Прочитайте документацию .

Ответ 4

С вашего поста я вижу, что вы хотите сравнивать даты, а не массивы. Если это так, то используйте соответствующий объект: объект datetime.

Пожалуйста, проверьте документацию для модуля datetime. Даты - жесткий файл cookie. Используйте надежные алгоритмы.