由于字符串是不可变的,您只需要使用修改后的字符串创建新列表
例如,如果您的列表存储在数据变量中:
data = [['5.71666666667', '2.08%', '11.03%', '13.89%'],
['5.7', '1.36%', '3.04%', '3.90%'],
['5.48333333333', '1.49%', '2.30%', '2.60%']]
您可以剥离每个元素
data = [[i.strip('%') for i in j] for j in data]
或用空字符串替换百分号
data = [[i.replace('%', '') for i in j] for j in data]
但是您应该检查实例类型是列表可以包含除字符串以外的任何内容,否则您得到了AttributeError
data = [[i.replace('%', '') if isinstance(i, basestring) else i
for i in j] for j in data]
您不能创建新列表,而是迭代现有列表并修改它们:
for sublist in data:
for i, val in enumerate(sublist):
if isinstance(v, basestring):
sublist[i] = v.strip('%')