Хотя технически *1001* технически возможно, как продемонстрировал @wim, удобнее писать что-то вроде следующего, которое также работает с отрицательными и десятичными числами.
try:
a = list(map(int, list_of_strings))
except ValueError as e:
raise DnDException(str(e))
Обновление:Похоже, вы также можете сделать это:
class DnDException(Exception):
def __init__(self, *args):
super(DnDException, self).__init__(*args)
raise self
list_of_strings = ["I", "will", "break", "this!", "7", "Haha!"]
a = [int(i) if str.isdigit(i) else DnDException("%s is not a number." % i) for i in list_of_strings]