Vous avez fini par revenir en arrière ... Préféreriez-vous une de ces possibilités? :
def print_host(host,serv,numb, ch = ('define host {{\n'
' {0:<21}{6}\n'
' {1:<21}{6}\n'
' {2:<21}{6}\n'
' {3:<21}{7}\n'
' {4:<21}{8}\n'
' {5:<21}{9}\n'
'}}\n' )):
f = open(host, 'w')
f.write(ch.format('host_name','alias','display_name',
'address','use','register',
host,
str(socket.gethostbyname(host)),serv,numb))
ou
def print_host(host,serv,numb):
tu = ('define host {',
' {:<21}{}'.format('host_name',host),
' {:<21}{}'.format('alias',host),
' {:<21}{}'.format('display_name',host),
' {:<21}{}'.format('address',str(socket.gethostbyname(host))),
' {:<21}{}'.format('use',serv),
' {:<21}{}'.format('register',numb),
'}\n')
f = open(host, 'w')
f.write('\n'.join(tu))
ou
def print_host(host,serv,numb):
f = open(host, 'w')
f.writelines(('define host {\n',
' {:<21}{}\n'.format('host_name',host),
' {:<21}{}\n'.format('alias',host),
' {:<21}{}\n'.format('display_name',host),
' {:<21}{}\n'.format('address',str(socket.gethostbyname(host))),
' {:<21}{}\n'.format('use',serv),
' {:<21}{}\n'.format('register',numb),
'}\n'))
ou (je préfère ce un plus propre)
def print_host(host,serv,numb):
f = open(host, 'w')
f.writelines(('define host {\n',
' host_name {}\n'.format(host),
' alias {}\n'.format(host),
' display_name {}\n'.format(host),
' address {}\n'.format(str(socket.gethostbyname(host))),
' use {}\n'.format(serv),
' register {}\n'.format(numb),
'}\n'))
Le socket.gethostbyname sera placé dans une suite d'essayer plus tard . ;) – CarpeNoctem
vous pouvez être en mesure de faire avec le remplissage de l'espace par la mise en forme de chaîne directement, au lieu de le coder en dur. –