如何从列表中的每个元素中删除一个公共字符?

How do I remove a common character from each element in my list?

我正在网络抓取后清理我的数据,列表中的每个元素前都有 \n。

SP500 = ['\nAAPL', '\nMSFT', '\nGOOG', '\nGOOGL', '\nAMZN', '\nTSLA'...]

我应该如何从每个元素中删除 \n?

如果您知道它始终是相同的模式,您可以使用适用于 python 3.9+ 的 str.removeprefix(),在您的情况下:

SP500 = [value.removeprefix('\n') for value in SP500]

如果你知道它总是相同的长度,你可以这样做:

SP500 = [value[2:] for value in SP500]

你可以这样做:

remove_char = ['\n']
SP500 = ['\nAAPL', '\nMSFT', '\nGOOG', '\nGOOGL', '\nAMZN', '\nTSLA']
SP500 = [''.join(x for x in string if not x in remove_char) for string in SP500]

remove_char 列表中的每一项都已从您的列表中删除

您也可以使用简单的 lstrip() 来删除左边的字符:

[e.lstrip() for e in SP500]

strip() 从左和右删除它:

[e.strip() for e in SP500]

另请参阅文档 python string methods str.lstrip([chars])

例子
SP500 = ['\nAAPL', '\nMSFT', '\nGOOG', '\nGOOGL', '\nAMZN', '\nTSLA']
SP500 = [e.lstrip() for e in SP500]
输出
['AAPL', 'MSFT', 'GOOG', 'GOOGL', 'AMZN', 'TSLA']