Вы можете использовать короткий метод, который try
является преобразованием и либо возвращает int
, либо само значение и объединяет его с пониманием списка:
g=['a','3', 'b', '1', 'c', '1', 'd', '1', 'e', '0', 'f', '2']
def tryInt(text):
"""Tries to convert text to int. Either returns an int or text"""
try:
return int(text)
except: # catchall for any error whatsoever
return text
g2 = [tryInt(value) for value in g]
print(g2)
Вывод:
['a', 3, 'b', 1, 'c', 1, 'd', 1, 'e', 0, 'f', 2]
См .: Исключения Python