説明
1 . 文字列を繰り返してカンマ区切りの文字列を作成
-
["1,2,3"]*3
は、リスト["1,2,3"]
を3回繰り返します。その結果、リストは["1,2,3", "1,2,3", "1,2,3"]
になります。 -
",".join(...)
は、このリストの要素をカンマで結合し、1つの文字列にします。 - 結果として、
1,2,3,1,2,3,1,2,3
という文字列が生成されます。
# 文字列を繰り返してカンマ区切りの文字列を作成
print(
",".join(["1,2,3"]*3)
)
# 1,2,3,1,2,3,1,2,3
2 . カンマ区切りの文字列をリスト化
- 前のコードと同じく、まず
",".join(["1,2,3"]*3)
で1,2,3,1,2,3,1,2,3
という文字列が生成されます。 - その後、この文字列に対して
split(",")
を呼び出します。これにより、文字列はカンマで区切られ、それぞれの部分がリストの要素として分割されます。 - 結果として、リスト
['1', '2', '3', '1', '2', '3', '1', '2', '3']
が生成されます。
# カンマ区切りの文字列をリスト化
print(
(",".join(["1,2,3"]*3)).split(",")
)
# ['1', '2', '3', '1', '2', '3', '1', '2', '3']
3 . リストから指定の範囲の要素を取得
-
",".join(["1,2,3"]*3)
によって、文字列1,2,3,1,2,3,1,2,3
が生成されます。 -
split(",")
によって、この文字列をカンマで分割し、リスト['1', '2', '3', '1', '2', '3', '1', '2', '3']
が生成されます。 -
start = 2
とcount = 6
なので、リストのstart-1
番目(インデックス1、つまり2番目の要素)からstart-1+count
番目(インデックス7まで)の要素を取得します。具体的には、['2', '3', '1', '2', '3', '1']
です。
# リストから指定の範囲の要素を取得
start=2
count=6
print(
(",".join(["1,2,3"]*3)).split(",")[start-1:start-1+count]
)
# ['2', '3', '1', '2', '3', '1']