我有这段代码,并想从列表中删除' and‘。
def names_to_apa(names):
x = names.split(",")
nm = []
for y in x:
nm.append(y.split())
print(nm)
for i in nm:
if i == 'and':
nm.remove(i)
print(nm)
print(names_to_apa("First Last, David Joyner, and George Burdell"))
#print: Last, F., Joyner, D., & Burdell, G.
当前输出为:
[['First', 'Last'], ['David', 'Joyner'], ['and', 'George', 'Burdell']]
但我想去掉第三个列表中的'and‘。
我尝试过的方法不起作用,我通过搜索StackOverflow找到的似乎只适用于单个列表,或者我不知道如何在列表中的列表中实现它。
你能帮上忙吗?
发布于 2019-06-27 07:35:27
您可以在代码中添加一条指令,将"and“替换为"":
def names_to_apa(names):
names=names.replace("and","")
x = names.split(",")
nm = []
for y in x:
nm.append(y.split())
print(nm)
for i in nm:
if i == 'and':
nm.remove(i)
print(nm)
print(names_to_apa("First Last, David Joyner, and George Burdell"))
输出:
[['First', 'Last'], ['David', 'Joyner'], ['George', 'Burdell']]
发布于 2019-06-27 07:34:17
您需要访问子列表来执行删除操作,而不是外部列表:
data = [['First', 'Last'], ['David', 'Joyner'], ['and', 'George', 'Burdell']]
for sublist in data:
while "and" in sublist:
sublist.remove("and")
https://stackoverflow.com/questions/56782140
复制相似问题