我有一个字符串40% Apple23% Orange21.2% Bananas
,我需要得到一个数组,比如:Apple (40%), Orange (23%), Bananas (21.2%)
。我想.split()
在这里不工作。我该怎么做?
您可以使用正则表达式:
import re
s = "40% Apple23% Orange21.2% Bananas"
out = []
for amount, fruit in re.findall(r"(d+.?d*)s*%s*([^d]+)", s):
out.append("{} ({}%)".format(fruit, amount))
print(", ".join(out))
打印:
Apple (40%), Orange (23%), Bananas (21.2%)