ValueError: nombre de campo de longitud cero en formato en Python2.6.6

Yo uso este shell de Python para generar una cadena:

>>>':'.join("{:x}\n".format(random.randint(0, 2**16 - 1)) for i in range(4)) 

Cuando ejecuto este shell en Python2.7.5, todo va bien. Pero ocurre ValueError: zero length field name in format cuando la versión de Python es 2.6.6 . ¿Qué debo ejecutar esta shell bien cuando la versión de Python es 2.6.6 ?

En las versiones 2.6 o anteriores de Python, debe numerar explícitamente los campos de formato:

 ':'.join("{0:x}\n".format(random.randint(0, 2**16 - 1)) for i in range(4)) # ^ 

Puedes leer sobre esto en los documentos :

Modificado en la versión 2.7: los especificadores de argumento posicionales pueden omitirse, por lo que '{} {}' es equivalente a '{0} {1}' .