如何替换字符串中的列名(python)?

2024-09-28 13:14:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我对更换有意见。所以,我有一个字符串和一个列表。该列表包含数据框的列名,字符串包含少数带有列名的整数或字母。现在我只需要字符串中的字母,而不需要列名。为此,我基于(,)拆分了字符串,并尝试使用replace删除列名,但它不起作用。有谁能帮我解决这个问题吗

我的df:

  a b c
0 d 2 4
1 f 4 5
2 r 9 0

我的代码:

values = "dffa,c20"
column = ['a','c']
value =values.split(',')
print(value)
z=[]
for i in column:
    for j in value:
        z.append(j.replace(i,''))
print(z)

输出:

['dffa','c20']
['dff','c20','dffa','20']

预期产出:

['dff','20']

Tags: 数据字符串in列表forvalue字母column
1条回答
网友
1楼 · 发布于 2024-09-28 13:14:40

您不想在这里执行嵌套循环;相反,您希望同时循环两件事情,这样您就可以访问每个迭代的第i个元素。您可以使用zip进行以下操作:

values = "dffa,c20"
column = ['a','c']
value = values.split(',')
z=[]

for element, letter in zip(value, column):
    z.append(element.replace(letter, ''))

print(z)
# ['dff', '20']

相关问题 更多 >

    热门问题