@terpizavr
В эволюционной цепи, я перед планктоном

Как сравнить два значения?

s=['100000','103213',"123451","1242166"]
for x in s:
   
   if x[2:]!=x+1[2:]:
      print('a')
   else:
       print("b")

Помогите, как сравнить первые 2 цифры одного значения, с двумя другого?
  • Вопрос задан
  • 64 просмотра
Решения вопроса 1
MinTnt
@MinTnt
s=['100000','103213',"123451","1242166"]

for x in range(len(s)-1):
	if s[x][:2] == s[x+1][:2]:
		print('a')
	else:
		print('b')

Небольшая инфа:
1. В изначальном коде была ошибка, которая не сходилась с условием
сравнить первые 2 цифры
, а срез выглядел как [2:], что наоборот брало в учёт всё что находится правее включая символ под индексом 2. [:2] - же как раз получает первые два символа под индексами 0, 1 но не включая индекс 2
2. Почему именно такой цикл?
for x in range(len(s)-1):

Сам по себе x в этом цикле отыгрывает роль индекса для списка.
len(s)-1 - используеться для того, чтобы брались все индексы, кроме последнего, так как если бы включить и последний, то вылезит ошибка при попытке получить это значение s[x+1]
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Fallervood
@Fallervood
К примеру можно сделать следующее:
s = ['100000','103213',"123451","1242166"]

for x in range(0,2):
   if s[x] != s[x+2]:
      print(s[x], "не равняется", s[x+2])
   else:
      print(s[x], "равно", s[x+2])

Вывод:
100000 не равняется 123451
103213 не равняется 1242166

Надеюсь помог.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
26 мая 2022, в 11:22
3000 руб./за проект
26 мая 2022, в 10:41
2000 руб./в час
26 мая 2022, в 10:22
3900 руб./за проект