Я использую перечисления и string.join() метод, чтобы сформировать справочную строку в Python:конкатенация питон строка в цикле
Я следующий фрагмент кода:
from enum import Enum
class Estimators(Enum):
rsac = 1
msac = 2
Теперь я создаю подсказка строки следующим образом:
est_help = 'Valid options are: [' + (str(i.name) + ', ' for i in Estimators) + ']'
Это бросает исключение TypeError, как:
TypeError: cannot concatenate 'str' and 'generator' objects
Мне было интересно, что я делаю неправильно. i.name
имеет строковый тип.
'(ул (i.name) + '' инт в RobustEstimators)' является генератор, так что вы можете 't добавить его в строку, точно так же, как сообщение об ошибке сообщает вам. Вы имели в виду '', '.join (...) '? – jonrsharpe
Возможно, вам нужно 'est_help = 'Допустимые параметры: [' + str (i.name) + ',' для i в RobustEstimators + ']''? –
@KevinGuan, как вы думаете, что это поможет? – jonrsharpe