Разрешение dot / fullstop с числовым значением с помощью js keycode

Вы можете использовать reversed(formation) для возврата обратного итератора formation. Когда вы вызываете formation.reverse(), он делает разворот списка и возвращает None.

EDIT:

Я вижу, что вы пытаетесь сделать сейчас, по-моему, проще всего сделать это со списком:

def solution(formation):
    return len([k for k in formation[formation.index(bCamel)+1:] if k == fCamel]) == 0

Это в основном рассматривает все элементы после первого bCamel и собирает все элементы, которые имеют значение fCamel. Если этот список имеет длину == 0, у вас есть решение.

Вот несколько примеров:

>>> k = ['F','F','B','B','F']
>>> solution(k)
False
>>> k = ['F','F','B','B','B']
>>> solution(k)
True
>>> k = ['F','F','B','F','F','B','B']
>>> solution(k)
False
>>> 
1
задан Ignacio Ara 13 July 2018 в 09:50
поделиться

2 ответа

Измените && на || для второго теста keyCode

function IsNumeric(e) {
        var keyCode = e.keyCode == 0 ? e.charCode : e.keyCode;
        var ret = ((keyCode >= 48 && keyCode <= 57) || keyCode == 190);
        document.getElementById("error_numeric").style.display = ret ? "none" : "inline";
        return ret;
    }
2
ответ дан peeebeee 17 August 2018 в 13:31
поделиться
  • 1
    Спасибо! но это не сработает. Я пробовал это до и снова, но это только числовые значения. – Peter 13 July 2018 в 07:20
  • 2
    Можете ли вы продемонстрировать проблему в jsfiddle? – peeebeee 13 July 2018 в 07:21
  • 3
    Я получил решение. Это ключевой код, который был установлен равным 46, поскольку я использую onkeypress. Спасибо за вашу помощь! – Peter 14 July 2018 в 04:44

Поскольку событие инициировано onkeypress, для этого события decimal / fullstop / point keyCode является keyCode=46

Таким образом, условная логика функции будет следующей:

var ret = ((keyCode >= 48 && keyCode <= 57) || keyCode == 46);

И это решает проблему.

1
ответ дан Peter 17 August 2018 в 13:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: