web-dev-qa-db-ja.com

ValueError:Python2.6.6形式の長さゼロのフィールド名

このpython Shellを使用して文字列を生成します。

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

このシェルをPython2.7.5で実行すると、すべて問題ありません。しかし、それはValueError: zero length field name in format when Pythonバージョンが2.6.6。 Python version is 2.6.6

38
changzhi

Pythonバージョン2.6以前では、フォーマットフィールドに明示的に番号を付ける必要があります。

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

これについては docs で読むことができます:

バージョン2.7で変更:位置引数指定子は省略できるため、'{} {}''{0} {1}'と同等です。

67
iCodez