Pythonで[1,2,2,3,3,3]のようなリストから[1,2,3]のようなリストを作成するには、どのように記述すれば実現できるのでしょうか。


下記のような要素の値分だけ要素があるリストXがあり、これから要素の値を１つずつにしたリストYを作成するにはどのような記述方法がありますでしょうか。

[code]

    # 元のリスト
    X=[4,4,4,4,3,3,3,6,6,6,6,6,6,2,2,1,3,3,3]
    
    # 変換後のリスト
    Y=[4,3,6,2,1,3]
    
[/code]

2日間考え、調べましたがわかりませんでした。  
リスト内包表記などを使うのかなと思っています。

わかる方いましたらご教授願います。  
よろしくお願い致します。




最初に現れた`3,3,3`と後に現れた`3,3,3`を別物として扱いたい場合は、こちらの記事の`itertools.groupby()`とリスト内包表記が使えるでしょう。  
[Pythonでリストの連続する同じ値の要素をグループ化（itertools.groupby）](https://note.nkmk.me/python-
itertools-groupby/)

[code]

    import itertools
    
    X = [4,4,4,4,3,3,3,6,6,6,6,6,6,2,2,1,3,3,3]
    Y = [k for k, g in itertools.groupby(X)]
    print(Y)
    
[/code]




最初に現れた`3,3,3`と後に現れた`3,3,3`を別物として扱いたい場合は、こちらの記事の`itertools.groupby()`とリスト内包表記が使えるでしょう。  
[Pythonでリストの連続する同じ値の要素をグループ化（itertools.groupby）](https://note.nkmk.me/python-
itertools-groupby/)

[code]

    import itertools
    
    X = [4,4,4,4,3,3,3,6,6,6,6,6,6,2,2,1,3,3,3]
    Y = [k for k, g in itertools.groupby(X)]
    print(Y)
    
[/code]

