A simple modification to your lambda function should do the job:
>>> y=lambda x: (x and '('+x[:3]+')'+x[3:6]+'-'+x[6:10]) or ''
>>> y('123456789')
'(123)456-789'
>>> y('')
''
EDIT:
You could also replace the and/or idiom with if-else construct:
>>> y=lambda x: '('+x[:3]+')'+x[3:6]+'-'+x[6:10] if x else ''