Встретил пример, питон тьюторе в разделе, посвященном изучению массивов и операций с ними такой любопытный код, который я понимаю интуитивно - что он именно делает. Не понятно значение только одной конструкции. Поясните мне его, пожалуйста.
# дано: s = ‘ab12c59p7dq’
# надо: извлечь цифры в список digits,
# чтобы стало так:
# digits ==
s = ‘ab12c59p7dq’
digits =
for symbol in s:
if ‘1234567890’.find(symbol) != -1:
digits.append(int(symbol))
print(digits)
Что значит != -1? Оператор != означает, насколько помню, верно, что не равно.
Почему, если в коде меняешь значение параметра с -1 на другой, интерпретатор выдает ошибку, что невозможно преобразовать строку “а” в целое число? Загадочная роль конструкции не гуглится. Я смутно понимаю, что -1 один здесь скорее всего описывает ход по массиву s слева-направо, проверяя встречается ли какой нибудь из символов в рамках конструкции if в строке или нет. Если нет, начинается новая итерация. Вопрос: она задается этим выражением != - 1 или что это тогда значит?
Вопрос наверняка очень глупый, но тем не менее, прошу на него ответить.
С уважением. И всем привет.