私はPythonで整数のリストを書式化しようとしています。連続した数字をフォーマットする
入力は整数のソートされたリストです:
list = [1, 2, 3, 6, 8, 9]
私は、出力はこのように見ている文字列であることを、それをしたいと思います:
outputString = "1-3, 6, 8-9"
これまでのところ、私は達成するために管理されているすべては、この次のとおりです。
outputString = "1-2-3, 6, 8-9"
すでに連続している場合、Intを無視するようにコードに指示するのは難しいです。ここで
これまでの私のコードです:あなたの助けと洞察力のための
def format(l):
i = 0
outputString = str(l[i])
for x in range(len(l)-1):
if l[i + 1] == l[i]+1 :
outputString += '-' + str(l[i+1])
else :
outputString += ', ' + str(l[i+1])
i = i + 1
return outputString
感謝:)
。残念ながら私は今コードを見つけることができません。しかし、 "8,9"は "8-9"より人間が読みやすいと判断されたので、最初の最後の表記は3つ以上の連続した整数に対してのみ使用していました。 – VPfB