.append
関数はリストに要素を追加します。リストに要素を追加するにはどうすればよいですか?逆に?インデックスゼロは新しい値であり、古い値はインデックス内で上に移動しますか?付録は何をしますか
[a,b,c,d,e]
私が欲しいもの。
[e,d,c,b,a]
どうもありがとうございます。
.append
関数はリストに要素を追加します。リストに要素を追加するにはどうすればよいですか?逆に?インデックスゼロは新しい値であり、古い値はインデックス内で上に移動しますか?付録は何をしますか
[a,b,c,d,e]
私が欲しいもの。
[e,d,c,b,a]
どうもありがとうございます。
あなたがリストを持っているとしましょうa
、a = [1, 2, 3]
ここで、そのリストに対してどのようなことができるのか疑問に思ったとします。
dir(a)
うーん...このことは何をするのだろうかinsert
...
help(a.insert)
インデックスの前にオブジェクトを挿入しますか?なぜ、それは私がやりたいこととよく似ています!リストの先頭に何かを挿入したい場合、それはインデックス0の前になります。どのオブジェクトを挿入しますか?7を試してみましょう...
a.insert(0, 7)
print a
さて、リストの一番上にあるその7を見てください!
TL; DR:dir()
利用可能なものを確認し、help()
それがどのように機能するかを示します。次に、それを試してその機能を確認するか、必要な機能が何と呼ばれるかがわかったので、ドキュメントをGoogleで検索します。
deque
これには(両端キュー)を使用する方が効率的です。インデックス0での挿入は、各要素をシフトする必要があるため、リストに非常にコストがかかります。これには、O(N)の実行時間が必要deque
です。同じ操作では、O(1)です。
>>> from collections import deque
>>> x = deque()
>>> x.appendleft('a')
>>> x.appendleft('b')
>>> x
deque(['b', 'a'])
の先頭somelist.insert(0, item)
に配置するために使用し、他のすべての要素を下にシフトします。大きなリストの場合、これは非常にコストのかかる操作であることに注意してください。シーケンスの両端にアイテムを追加したり、シーケンスの両端からアイテムを削除したりする場合は、代わりにdequeを使用することを検討してください。item
somelist
位置の値に0を指定してPythonのlistinsert
コマンドを使用すると、リストの先頭に値が挿入されるため、逆の順序で挿入されます。
your_list.insert(0, new_item)
できるよ
your_list=['New item!!']+your_list
ただし、insertメソッドも機能します。
lst=["a","b","c","d","e","f"]
lst_rev=[]
lst_rev.append(lst[::-1])
print(lst_rev)
リストに要素を逆の順序で追加する方法の例を次に示します。
liste1 = [1,2,3,4,5]
liste2 = list()
for i in liste1:
liste2.insert(0,i)
以下を使用します(xが追加したいものであると仮定します):
your_list = [x] + your_list
また:
your_list.insert(0, x)