如何用Python实现蜡笔销售数据的逐行直方图输出
Python实现蜡笔销售数据直方图输出
核心输出逻辑代码
假设你已经将销售数据存储在sales_data列表中,以下是实现直方图输出的代码:
# 示例已存储的销售数据(实际使用时替换为你的数据) sales_data = [ "purple 11,yellow 3,pink 1", "gray 8,blue 10,pink 12" ] # 遍历每行数据,按要求输出 for line_num, line_content in enumerate(sales_data, start=1): print(line_num) # 拆分当前行的各个销售条目 color_items = line_content.split(',') for item in color_items: # 拆分颜色和数量,先去除条目前后可能的空格 color, count_str = item.strip().split() count = int(count_str) # 生成对应数量的星号 star_bar = '*' * count print(f"{color} {star_bar}")
补充:输入获取代码(如果还未实现)
如果还没完成数据输入的部分,这段代码可以帮你读取符合规则的输入并存储到列表:
n = int(input()) sales_data = [input().strip() for _ in range(n)]
关键逻辑说明
- 使用
enumerate(..., start=1)直接获取从1开始的行号,无需手动维护计数变量。 - 用
split(',')拆分每行的多个销售条目,再用split()拆分每个条目的颜色和数量,strip()处理条目前后的多余空格。 - 通过字符串乘法
'*' * count快速生成对应长度的星号直方图,简洁高效。
内容的提问来源于stack exchange,提问作者melody
相关产品推荐
相关产品推荐

