其他分享
首页 > 其他分享> > 自制力太差怎么办,小工具帮你提高自制力

自制力太差怎么办,小工具帮你提高自制力

作者:互联网

前言

  最近学习总是“三天打鱼,两天晒网”,自己也苦恼了很久,到底是什么原因呢?

  百度、知乎逛了个遍,终于在知乎上找一篇文章自控力极差的人如何自救?,读完后觉得自己就是陷入了文中所说的那种死循环,“做计划->任务没完成->懊恼自责->做计划…”。
  想了很久,自己为什么没有按照计划完成该完成的工作、学习任务?为什么到了该学习的时候转头去打游戏?打游戏能获得什么好处?

  经过一段时间的思索,我觉得是因为打游戏能让我获得即时反馈(砍敌人一刀,他就掉一些血;推掉敌人水晶,就会出现Victory。)我花费二十分钟的时间打一局游戏,为的就是一个Victory,以获得心理上的快感。
  那怎么能让这种快感出现在学习中呢?
  为此,我写了这个小工具,希望能让我在学习中获得反馈,从而养成良好的学习习惯。

工具的使用

  1. 下载程序,新建exe文件的快捷方式,新建data.txt的快捷方式;
  2. win+r打开运行窗口,输入shell:startup,将exe的快捷方式放入弹出的文件夹中(这样电脑开机后就会启动)。
  3. 将data.txt的快捷方式放到桌面,每天完成工作后,就去data.txt文件中输入今天的工作时长。

工具下载地址及注意事项

  1. data.txt文件的第一行是当前月份,从01到12;从第二行开始,每一行输入两个数字(用空格隔开),第一个数字代表这个月的第几天(从1开始),第二个数字代表今天学习了几个小时。
  2. 程序健壮性并不强,使用时请严格按照本篇文章操作,data.txt文件和程序需要放在同级目录下。
  3. 程序内年份写死了,等有空的时候再优化。
  4. 有兴趣的小伙伴可以自行修改源码
  5. 工具链接:
    链接:https://pan.baidu.com/s/1ciP8PijMVPxs2stWrllD3Q
    提取码:1010
    复制这段内容后打开百度网盘手机App,操作更方便哦

源码

import matplotlib.pyplot as plt
import matplotlib as mpl
import os
import sys
import re
import tkinter as tk
import pandas as pd


class Application:
    x = []
    y = []
    month = '01'

    def loadData(self, path="data.txt"):
        file = open(path, mode="r+", encoding="utf-8")
        dataList = file.readlines()
        for item in dataList:
            try:
                date, hour = re.split("\s+", item.strip())
                self.x.append(date)
                self.y.append(float(hour))
            except:
                self.month = re.split("\s+", item.strip())[0]

        self.x = pd.date_range('2021/'+self.month + '/01', periods=len(self.y))
        print(self.x)
        print(self.y)
        file.close()

    def showImage(self):
        mpl.rcParams['font.sans-serif'] = ['SimHei']
        mpl.rcParams['font.serif'] = ['SimHei']
        mpl.rcParams['axes.unicode_minus'] = False
        plt.plot(self.x, self.y)
        text = "新的一月开始了,加油"
        span = self.y[-1] - self.y[-2]
        if len(self.y) > 1:
            if span > 0:
                text = "昨天战力飙升" + str(span)+"点,继续加油!"
            elif span < 0:
                text = "昨天战力下降" + str(-span)+"点,不能放任自己哦!"
            else:
                text = "与昨天战绩持平,继续加油!"

        plt.title(text+'\n2021年'+self.month + "月学习曲线", fontsize=15)
        plt.ylabel("小时")
        plt.gcf().autofmt_xdate()
        plt.show()


if __name__ == "__main__":
    os.chdir(sys.argv[0] + os.path.sep + "..")
    print(os.getcwd())
    app = Application()
    app.loadData()
    app.showImage()

标签:自制力,plt,text,self,txt,import,工具,怎么办,data
来源: https://blog.csdn.net/qq_38074535/article/details/115798942