回覆 關於某初三學生在CSDN上的求助

2021-10-19 08:37:54 字數 2414 閱讀 8197

在寫這個部落格的時候,這個故事已經過去挺久了

但是我還是決定寫一篇部落格記錄這件事情

經過幾個csdn熱心網友的**以及一些機緣巧合,我看到了這個初三學生的求助

而內容是製作乙個可以統計時間和金額的折線圖的小工具

反正閒著也是閒著,我就準備開始入手

首先,整理下製作的思路

問題中的自動連線生成折線圖,讓我想到了python中,pyecharts模組的line

於是決定,用python來完成這次製作

以及問題中,每天輸入乙個資料,代表了我需要做乙個儲存資料的容器

先從理論上建立工具使用的流程:

從整理的框架上來看,製作這個工具需要用到一下幾個模組

1. pyecharts模組中的line功能 構圖(程式的主體)

2.os模組 資料檔案的查詢以及建立

3.time模組 部分地方的停頓

首先,匯入3個必要的模組

from pyecharts.charts import line

import time

import os

然後,分別建立3個函式,來負責工具需要的3個功能

def programme():      #資料庫的查詢以及建立

def programme2(): #必要資訊的輸入

def programme3(): #折線圖的製作

(懶得給函式想名字了,隨便取個湊合著看吧)

至此,框架以及搭建好了

先從第乙個模組開始

資料庫的查詢以及建立:

def programme():

try:

os.mkdir('data')

print('發現暫沒資料目錄檔案')

print('正在建立...')

time.sleep(2)

print('建立完畢')

except:

pass

直接利用try...except...函式,嘗試建立資料夾

減少了查詢是否有資料夾的步驟

然後下下乙個模組

必要資訊的輸入:

這裡我們大膽的再進行新增元素

如果乙個圖示畫完了,需要構造第二個圖示

那我們還需要寫乙個刪除資料檔案的命令

def programme2():

print('輸入1:新增新**')

print('輸入2:清空**')

try:

b = int(input('現在,請你輸入:'))

except:

b = 999999 #這裡隨便輸入乙個不包括1和2的數即可,只是為了防止使用者隨便輸入

#新增資料

if b == 1:

print('請輸入記錄時間和數值。')

dat = input('現在,請你輸入數值:')

try:

int(dat)

data = dat + '\n'

print('正在記錄,請稍等。。。')

times = open('data/times.ini','a')

times.write(time)

times.close()

datas = open('data/datas.ini','a')

datas.write(data)

datas.close()

except:

print('你輸入的數值有問題,請輸入數字')

print('請在3秒後重新輸入...')

time.sleep(3)

#清空資料

elif b == 2:

print('正在清空資料,請稍後...')

if(os.path.exists(dirpath+"times.ini")) and (os.path.exists(dirpath+"datas.ini")):

os.remove(dirpath+"times.ini")

os.remove(dirpath+"datas.ini")

time.sleep(3)

print('清空完畢')

time.sleep(3)

else:

print('沒有可以清空的資料')

else:

pass

至此,3個模組已經寫好了2個,我們繼續完成最後乙個模組

文章未完,後續文章,請到我的個人部落格當神奇降臨