2012-02-23 13 views
2

2つのリストがあり、ListAから項目を削除して.append()を使用してListBに追加するには、.pop()を使用します。私はこれを試してみましたが、.pop()を使うとすぐに、.append()関数はそのあと1つのインデックスをとります。ここでPythonで同じ項目に対して.pop()と.append()を同時に使用できますか?

は、私が持っているコードは、これまでのところです:

ListA = ['a', 'b', 'c', 'd', 'e'] 
ListB = [] 

ListA.pop() 
ListA.pop() 
ListA.pop() 

print 'ListA =', ListA 
print 'ListB =', ListB 

私が手出力は次のようになります。

ListA = ['a', 'b'] 
ListB = [] 

私は、出力は次のようになりたいと思います:

ListA = ['a', 'b'] 
ListB = ['e', 'd', 'c'] 

私はappend()関数を持っていないことを知っていますが、そこに入れるとエラーになります。つまり、これは.pop()関数だけで動作するコードです。 .pop()で削除されているアイテムを取り出し、ListBに追加したい。

ありがとうございました。

+2

あなたはどのようなエラーが出るのですか?あなたの希望する出力は何ですか? –

+3

"私がそこに入れたときにエラーが出ます。"あなたが '.append()'を使ってどうしているのかが間違っていることを伝えることができるようにするには、あなたが '.append()' **をどのように使っているかを示す必要があります。 –

答えて

7

アペンド機能にポップ要素渡します

a= ['a', 'b', 'c', 'd', 'e'] 
b= [] 

b.append(a.pop()) 
b.append(a.pop()) 
b.append(a.pop()) 

print 'ListA =', a 
print 'ListB =', b 



Python 2.6.5 (r265:79063, Jun 12 2010, 17:07:01) 
[GCC 4.3.4 20090804 (release) 1] on cygwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> 
>>> a = ['a','b','c'] 
>>> b = [] 
>>> b.append(a.pop()) 
>>> b.append(a.pop()) 
>>> b.append(a.pop()) 
>>> print "a =", a 
a = [] 
>>> print "b =", b 
b = ['c', 'b', 'a'] 
>>> 
2

をあなたの出力を希望、私は何をしたいことは、このだと思う表示されませんので、私ははっきりとあなたの問題を理解していませんか?

ListB.append(ListA.pop()) 
+0

私が欲しいと望むことを示すように修正しました。 – emagdnim

1

私はこれはと同じくらい簡単だと思う:

a = ListA.pop() 
a1 = ListA.pop() 

ListB.append(a) 
ListB.append(a1) 

または私は1行です。

b.append([-1]) a.pop()

b.append([-1]:あなたがしようとしない理由

ListB.append(ListA.pop()) 
1
b.append(a.pop()) 
b.append(a.pop()) 
b.append(a.pop()) 
1

) a.pop()

b.append([-1]) a.pop()

関連する問題