python+心理学+计时器
前言
上学期开始进入自由学习阶段,在这个阶段个人认为有两个方面最为重要,一是方向,二是效率。最近,我综合了上学期所学的一些东西来对学习的效率来进行提高,总而言之效果还不错,在此特地分享。
关键词
Python;心理学;心流;正反馈;奖励机制;多端查看;日志模式;
需求导致原型产生
在去年这个时候,正在备战雅思,阅读需要严格控制时间,总是看表,看得愈发紧张,而且当时是跟着刘洪波练习的,他提出了一些口诀,我记忆力不太好,总是忘,于是就想着在电脑上写一个小程序,既可以计时,又可以显示口诀,让效率增高。
小程序显示时间和口诀
然后每次计时的时候就强迫自己集中注意力,不断反思总结,于是每次计完时就会总结一下,让自己下次做的更好,注意力更加集中。
总结
低效让原型进化
上学期低效的时光,阅读了不少心理学和学习的方法论书籍,总而言之就是:娱乐和学习要分开;学习时间注意力全放在学习上,尽量不要有别的想法,从而进入心流状态;给自己建立正反馈机制,让学习成为一件趣事;
这学期,刚从假期状态进入学习状态,迟迟难以进入状态,看书的时候,总是会有其它的想法在脑海里面乱窜,这时想起了自己当时做的雅思计时器,效果还不错,于是拿来修改一下,并融入了一些自己上学期学到的学习方法论。
接下来给大家展示一下一个完整的流程是怎样的。
选择计时时间
以秒为单位 计时时间旋转建议1500s一次,一般普通人集中精力25min是比较高效的,再往后会下降,此时不如出去走走。
专注提示语
找了一些专注提示语,在不同的时间段会出现不同的提示语 提示语计时结束的两个新功能
新功能名言警句
有时读读这些古人的话,对低头拉车的我们有着不小的启示作用,我使用一个txt文件来存储这些名言警句,在以后积累过程中遇到新的句子也可以及时加进去。
名言警句
随机奖励
这就是用来增加正反馈机制,如果学习本身没能给你带来足够的快感,那么这随机的奖励可以让你每次学习都有所期待,包括精神,物质,身体上的奖励。
随机奖励
背包
用来存储我们获得的奖励
背包
能力点数
每次学习完一次,可以获得一个自由点数,你可以像游戏一样加点,从而使自己的专项能力提升,得到某个称号,这个称号我是根据一万小时法则弄的,让自己有一种游戏人生的错觉快感。
能力点数
日志系统
让你回顾之前学习的状态和所学的知识
日志系统
第一天我提到的就是将这个小程序放在环境变量里面以后就可以直接win+r呼出计时,较为方便。
源代码
# -*- coding: utf-8 -*-
"""
Created on Sat Jan 6 12:38:48 2018
@author: Jamily
"""
import datetime
import time
import os
import random
import linecache
def main():
time_now=0
need=input("所需目标时间(s):")
need=int(need)
time_start=time.time()
while(time_now<need):
time.sleep(1)
t=os.system('cls')
time_end=time.time()
time_now=time_end-time_start
t_h=int(time_now/3600)
t_m=int(time_now/60-t_h*60)
t_s=int(time_now-t_h*3600-t_m*60)
print("----------")
print(t_h,":",t_m,":",t_s)
print("----------")
if(t_m<5):
print("|一心一意万事成|\n|三心二意错良机|")
elif(t_m<15):
print("|谁若没有耐心|\n|谁就没有智慧|")
elif(t_m<30):
print("|唯其痛苦|\n|才有欢乐|")
else:
print("|心有猛虎|\n|细嗅蔷薇|")
t=os.system('cls')
print("------您----获-----得-----了-----名-----言-----警-----句------")
readfile('./saying.txt')
print("------随----机-----奖-----励-----如-----下-----所-----示------")
readfile('./wins.txt')
print("---------------------------------------------------------------")
timer=input("少侠想说些啥?\nI want to say:")
i=datetime.datetime.now()
i=str(i)+' '
file='./test.txt'
writefile(file,i)
timer=timer+'\n'
writefile(file,timer)
def writefile(filename,timer):
f=open(filename,'r+')
t=f.read()
f.write(timer)
f.close()
def readfile(filename):
myfile=open(filename,'rb')
lines=len(myfile.readline().decode('utf-8'))
a=random.randrange(1,lines)
theline=linecache.getline(filename,a)
print (theline)
myfile.close()
if __name__ == '__main__':
main()
多端查看
我们可以使用坚果云,将这几个文件全部同步,然后在使用手机时就可以看到今天的学习进度,状态。
参考文献
[1]卡尔·纽波特. 《深度工作》
[2]安吉拉•达克沃斯 《坚毅》