Строка соединения и Нет / строка с использованием необязательного разделителя

Я в основном ищу Python, эквивалентный этой строковой операции VB / VBA:

FullName = LastName & ", " + FirstName

В VB / VBA + и & являются операторами конкатенации, но они отличаются тем, как они обрабатывают нулевое значение:

"Some string" + Null ==> Null
"Some string" & Null ==> "Some string"

Эта скрытая функция позволяет в первой строке написанного мной кода включать запятую и пробел между обязательными значениями LastName и необязательными значениями FirstName. Если FirstName имеет значение Null (Null - это VB / VBA-эквивалент Python None), FullName будет установлено в LastName без запятой.

Есть ли однострочный идиоматический способ сделать это в Python?

Technical Note :
Ответы gnibbler и eumiro не являются строго эквивалентами + и & VB / VBA. Используя их подходы, если FirstName представляет собой пустую строку (""), а не None, конечная запятая не будет. Почти во всех случаях это было бы предпочтительнее, чем результат VB / VBA, который заключался бы в добавлении конечной запятой с пустым именем FirstName.

17
задан mwolfe02 20 September 2010 в 15:17
поделиться