追加/遍历它
问题描述:
我想知道如何追加和弹出一个字符串只有特定的元素时,弹出一个字符串列表中的特定元素追加/遍历它
def letter(item):
lst = []
for i in item:
if 'a' in item:
# not sure what to put here
return lst
输出:
LST = [” a']
我只希望函数在'apple'
中附加字母'a'
,这是可能的吗?
有没有办法只使用list.pop()
函数从字符串中删除特定字母?
答
如果你需要使用list.pop(),您可以将字符串转换到一个列表:
def find_letter(item):
lst = []
item=list(item) #convert your string to list
for index,letter in enumerate(item):
if letter=='a':
lst.append(letter) # add 'a' to your empty list
item.pop(index) # remove 'a' from the original string
item="".join(item) # convert back your list to a string
return lst,item
这给出了以下的输出:
>>> find_letter("apple")
>>> (['a'], 'pple')
需要注意的是,你可以做使用列表理解更简单:
def find_letter(item):
word="".join([letter for letter in item if letter!='a'])
lst=[letter for letter in item if letter=='a']
return lst,word
Python code-smell#4:在迭代它时修改数组。 –
你是什么意思?当'item'为''apple''时给'lst = ['a']'? –
是的,只在第一个返回'a',所以第一个将会是lst = [a'] – Vellop