#python
Вопрос:
Здесь у меня есть список целых чисел следующим образом.
print(result) ['0', '0', '1', '0', '88', '38', '45', '1', '22', '25', '19', '32', '1', '34', '']
У меня есть три порога, чтобы проверить, достигло ли каждое число определенного уровня или нет. Пороговые значения следующие.
T1=85; T2=80; T3=75;
Я ищу, чтобы создать код, но я не уверен, с чего начать.Вот моя попытка.
for (int i = 0, i lt; result.size(); i ): prctVal=result[i] if prctVal gt; T1: risk = "high" ; elif prctVal lt; T3: risk = "minor" else T3lt;practvallt;T2: risk = "major" print(risk)
Я заканчиваю с синтаксической ошибкой.Может ли кто-нибудь помочь мне разобраться в этом вопросе?Я новичок в python.
Комментарии:
1. используйте
len(result)
вместо.size()
, потому что этого не существует2.
for (int i = 0, i lt; result.size(); i ):
Это недопустимый Python. Например, в Python нет оператора …3. о, подожди, это еще не все.
for i in range(len(result)):
4. или просто можете просто перебирать сами элементы:
for i in result
5.
else T3lt;practvallt;T2:
Не должно быть никаких условий ни наelse
том, ни на другом
Ответ №1:
Чтобы перебирать значения в списке, просто сделайте for VAL in LIST
это . Не обязательно иметь отдельную переменную для итерации по индексу.
Поскольку значения в вашем списке являются строками, вам необходимо преобразовать их с int
помощью функции.
for s in result: i = int(s) if i gt; T1: risk = "high" elif i gt; T2: risk = "major" elif i gt; T3: risk = "minor" else: risk = None print(risk)
Ответ №2:
Все элементы result
списка должны быть целочисленными (не строковыми)
Это питон. не является c#,java или другими языками. его синтаксис отличается
result = [0, 0, 1, 0, 88, 38, 45, 1, 22, 25, 19, 32, 1, 34] T1 = 85 T2 = 80 T3 = 75 for prctVal in result: if prctVal gt; T1: risk = "high" elif prctVal lt; T3: risk = "minor" elif T3 lt;= prctVal lt;= T2: risk = "major" print(prctVal, risk)
Ответ №3:
вы смешиваете синтаксис python с c то, что вы хотите, можно сделать, как показано ниже:
for prctVal in result: prctVal = int(prctVal) if prctVal gt; T1: risk = "high" elif prctVal lt; T3: risk = "minor" else T3lt;practvallt;T2: risk = "major" print(prctVal, ":", risk)