在寫這個部落格的時候,這個故事已經過去挺久了
但是我還是決定寫一篇部落格記錄這件事情
經過幾個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個,我們繼續完成最後乙個模組
文章未完,後續文章,請到我的個人部落格當神奇降臨