2015-06-26 82 views
-6

在Python中,我創建了一個列表,並且我想從中刪除一個字符串。刪除列表中的字符串

例:

>>> myList = ['a', 'b', 'c', 'd']

>>> myList = myList.remove('c')

>>> print(myList)

None

我在做什麼錯在這裏?我只想要從myList中刪除'c'

+2

什麼是'a'在這裏? –

+0

投票結束,因爲這似乎是一個印刷錯誤 – IanAuld

+0

其實即使他做了'myList = myList.remove('c')'它會導致同樣的問題,所以我想我們不應該關閉它 –

回答

2

的原因,我不知道是什麼a是(我在猜測另一個列表),你應該單獨做myList.remove(),沒有分配。

示例 -

>>> myList = ['a', 'b', 'c', 'd'] 
>>> myList.remove('c') 
>>> myList 
['a', 'b', 'd'] 

myList.remove()不返回任何東西,因此,當你做myList = <anotherList>.remove(<something>)它設置myList中以None

+0

謝謝,這正是我一直在尋找的! –

+0

很高興爲你效勞。 –

+0

另外,如果他們滿意地回答你的問題(通過點擊留言板上的勾號),請記住接受答案,這將有助於社區。 –

0

記住list是可變的,所以你可以簡單地調用remove列表本身上:

>>> myList = ['a', 'b', 'c', 'd'] 
>>> myList.remove('c') 
>>> myList 
['a', 'b', 'd'] 

與您之前獲取None是因爲remove()總是返回None

0

的remove()函數不返回任何東西,它會修改到位名單。如果你不把它分配給一個變量,你會看到myList不再包含'c'。

0

只是一個除了阿南德的Amswer,

mylist = mylist.remove('c') 

上面的代碼將導致MYLIST是沒有,只是到醚。因爲它返回「無」作爲返回類型。所以你想保留它作爲

mylist.remove('c')