Если вы используете Python 3, вы можете использовать Расширенная итеративная распаковка (только учтите, что surname
будет списком):
name, *surname = input("\n Enter name ").split()
if not surname:
surname = ['Smith']
print("name :",name)
print("surname:", ' '.join(surname))
Примеры
Enter name a
name : a
surname: Smith
Enter name a b c
name : a
surname: b c
Enter name a bc
name : a
surname: bc
try-except
можно использовать для более явного решения:
split_name = input("\n Enter name ").split(' ', maxsplit=1)
try:
name, surname = split_name
except ValueError:
name, surname = split_name[0], 'Smith'
print("name :", name)
print("surname:", surname)
Вывод такой же, как и раньше
Enter name a
name : a
surname: Smith
Enter name a bc
name : a
surname: bc
Enter name a b c
name : a
surname: b c