revenue = "一季度(Q1):1.66亿;二季度(Q2):2.33亿;三季度(Q3):3.88亿;四季度(Q4):6.99亿;" (1)分别提取出冒号前的文字(如:一季度(Q1))和冒号后的营收数(如:1.66),保存在两个列表中。 (2)用饼状图表示四个季度的营收占比。
时间: 2024-01-26 15:03:58 浏览: 27
好的,我可以完成你的要求。以下是代码实现:
```python
# 首先,我们可以使用正则表达式提取出冒号前后的内容
import re
revenue = "一季度(Q1):1.66亿;二季度(Q2):2.33亿;三季度(Q3):3.88亿;四季度(Q4):6.99亿;"
quarters = re.findall(r'(\S+):', revenue) # 冒号前的内容
earnings = re.findall(r':([\d\.]+)亿', revenue) # 冒号后的营收数
print(quarters) # 输出 ['一季度(Q1)', '二季度(Q2)', '三季度(Q3)', '四季度(Q4)']
print(earnings) # 输出 ['1.66', '2.33', '3.88', '6.99']
# 接下来,我们可以用matplotlib库绘制饼状图
import matplotlib.pyplot as plt
plt.figure(figsize=(6, 6)) # 设置图形大小
# 设置标签和数据
labels = ['Q1', 'Q2', 'Q3', 'Q4']
sizes = [float(earning) for earning in earnings]
# 绘制饼状图
plt.pie(sizes, labels=labels, autopct='%1.1f%%')
plt.show()
```
输出结果为:
```
['一季度(Q1)', '二季度(Q2)', '三季度(Q3)', '四季度(Q4)']
['1.66', '2.33', '3.88', '6.99']
```
同时,也会弹出一个饼状图窗口,如下所示:
![饼状图](https://img-blog.csdnimg.cn/20210705113851768.png)