У меня есть следующие:Можно ли присвоить значение по умолчанию при распаковке?
>>> myString = "has spaces"
>>> first, second = myString.split()
>>> myString = "doesNotHaveSpaces"
>>> first, second = myString.split()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: need more than 1 value to unpack
Я хотел бы иметь second
значение по умолчанию для None
, если строка не имеет никакого пустого пространства. Я в настоящее время имеют следующие, но мне интересно, если это может быть сделано в одной строке:
splitted = myString.split(maxsplit=1)
first = splitted[0]
second = splitted[1:] or None
Это невозможно, так как я знаю, потому что функция разделения писал, как это. Но вы можете использовать оператор if, например, есть ли пробел или нет в строке. – pilkington
@wim - Python 3 – neverendingqs