随机生成100000个0到100的成绩,然后分段统计成绩的数量(分为3段:0~59、60~84、85~100)。 参考程序: import csv,random import pandas as pd import matplotlib.pyplot as plt csvfile = r"d:\python\myscore.csv" with open(csvfile, 'w') as fp: wr = csv.writer(fp) wr.writerow(["学号", "成绩"]) for i in range(100000): wr.writerow([str(i+1), random.randrange(101)]) df = pd.read_csv(r"d:\python\myscore.csv", encoding="cp936") df = df.dropna(axis=0) plt.figure() x = df["成绩"] lx = [0,60,85,101] ly = ["0-59","60-84","85-100"] total=[0,0,0] for i in range(3): total[i] = x.between(lx[i], lx[i+1]-1).sum() plt.plot(ly, total) print(total) plt.show()