Нет, Python не имеет Shorthands или упрощений в синтаксисом try
/except
.
Чтобы решить конкретную проблему, я бы, вероятно, использовать что-то вроде:
for j, i in enumerate(alist[:-1]):
iplus1 = i + alist[j + 1]
Что бы избежать необходимости исключения.
Или, чтобы получить супер круто и родовое:
from itertools import islice
for j, i in enumerate(islice(alist, -1)):
iplus1 = i + alist[j + 1]
Альтернатива, вы можете использовать: itertools.iziplongest
сделать что-то подобное:
for i, x in itertools.izip_longest(alist, alist[1:], fillvalue=None):
iplus1 = i + x if x is not None else ""
Наконец, небольшую заметку по номенклатуре: i
традиционно используется означает «индекс», поэтому использование for i, j in enumerate(…)
было бы более «нормальным».
Итак ... что вы пытаетесь выполнить, здесь? – Ryan
Это странный код –
Предполагается сделать некоторое динамическое программирование, когда я вижу предыдущий и следующий элемент в списке и принимаю некоторые решения, основываясь на некоторой конвергенции, которую я буду вычислять. – alvas