#「闪光时刻」主题征文 二期#

大家在写报告、写总结时,是否会先去翻一下以前写过的类似的东西?是否有看过比较好的文章,想保存时却为归类而纠结?是否电脑里的文件越来越多,想删掉一些却又舍不得?身处大数据和人工智能的时代,如何节约时间,提高工作效率,快速积累知识并使用知识呢?本文分享一种知识整理术,并提供一个实用的小工具。

一、认识“元认知”

知识是什么,在信息时代之前,知识大部分依存于记忆;在信息时代初,知识主要变成了一种能搜索和利用信息的能力;而随着信息化的深入,个人要获取各种知识越来越容易,因此我们需要一种是整合内外部资源,结构化管理多种知识的技能。

也就是说,我们要强化我们的元认知,来管理好自己的技能库。元认知是美国心理学家J.H.Flavell在1976年提出的概念,意思是“反映或调节认知活动的任一方面的知识或认知活动,即认知的认知”。本文通俗地把其定义为一种高效学习知识、使用知识的技能。

二、使用笔记,节约认知资源,节约认知资源,更新知识树更新知识树

不断学习不断遗忘,是人的天性。遗忘也让宝贵的认知资源及时回收,让人脑轻装上阵,随时保持良好的状态。但是我们真的要抛弃以前做过的事情,或者说遗忘知识吗?不是的,人生不是小说创作,我们也不知道自己的终极技能是什么,向前走一步才能看到下一步的路,我们不能轻易遗忘,要做好笔记。随着经历增加,知识在不断积累,小心养好自己的知识树。世事迁移,某些枝叶可能变成主干,某些主干也可能变成枝叶。把过程保存下来,不仅能看到自己的进步,也能看到自己所朝着的方向,岂不很有意义?

如果把人脑比作电脑,人的记忆就是内存,容量小而响应速度快,而外部笔记就是硬盘。

要降低人脑的记忆负荷,就要更好的利用硬盘。硬盘读写速度越快越好,同理,好的笔记方法要能快速记录,方便查询,和结构化展示。现在市场上几乎没有集3个优点合一的笔记方法。要么是写入太麻烦,要么是查找不方便,能够结构化展示内容的更少。

三、高效管理文件夹的方法,就是最好的笔记

要快速记录笔记,最好的方法就是让程序自动做”笔记”。把自己曾经做过的事情,按结构存放于各个文件夹中,自然就做成自己的知识树了。不知道大家有没有用过思维导图,我曾经很热衷于这样的结构工具,但它一个是要收费;而且画出如下的结构图(仅是举例,内容不重要)只能完全手动,花费时间长;最后它不开源,不能个性化新增功能。

我这个程序的设想就是制作类似思维导图功能的工具,但最大优点是自动化,只要把这个工具放入所在文件夹中,就能根据文件夹结构生成图谱。还强化了文件夹的个性化操作功能。例如在某些文件夹或文件上标注“待处理”文字的话,能够将该文件名放置到待处理区域,提醒用户办理。整体界面如下:

这个程序有如下的本地文件夹管理功能:

(一)能自动画出文件结构图,展开缩放。按照最近编辑时间先后排序。

(二)使用本程序打开本地文件夹。

(三)展示所有文件的最近编辑时间。

(四)展示待处理文件,提示待办事项。

(五)可以根据关键词在目标文件夹中查找文件内容。例如深入查找docx文件中的段落,和python程序中的代码。

四、各步骤及核心代码

思路是用python的os库分析文件结构,用python的flask作为后台建立本地服务器,用html做前台展示界面,实现交互功能。文件结构如下,主程序为flaskhtml.py,在templates里面放上home.html,html中的文件结构图采用echarts的tree图。

(一)使用python的os库分析文件结构。将这个结构保存为dataframe格式。这

部分关键就是要写个循环,遍历到所有文件夹的最内层。用os.listdir获取文件名list,把文件名记录到一个dataframe,核心代码如下:

1.获取第二层文件夹名字(第一层就是默认以“我的文件夹”为名)

2.用循环获取第三层直至最后一层的文件夹名字(再次用os.listdir打开储存在dataframe中的文件夹路径,获取该链接下的文件名,如果本层级的所有文件夹下面都没有文件了,就跳出循环;否则就继续深入。)

我这里先设定了深入到20层,一般文件夹用不到20层,就会结束循环。

3.获取文件的最近一次修改时间

4.最终得到如下的层级结构

(二)将dataframe(df)转化成符合tree图要求的list格式数据。

tree图中,每个点的属性有三个:name,value,children。name是某个点的名字,value是该点的自定义内容,我把每个文件夹的链接地址和修改时间储存到value中。每一个点不一定都有childeren属性,它是包含该点下一层级支点的信息,下一层支点又可以带有以上三个属性。

也是类似地按照第一步一层层地将dataframe转变成list,不同的是,第一步的层级结构是要从文件夹里分析出来的,这一步是从那个df里面读取的。

(三)在html中增加其他功能的按钮,使其能和本地python程序交互。例如根据文件夹路径打开文件夹;根据搜索的关键词,查找本地文件夹名字或者文件内容。

(四)最后,使用flask搭建本地服务器,在浏览器上使用本软件。

用flask将本地处理好的数据上传到html。运行flaskhtml.py之后,出现如下界面,就代表本地网站服务器已经运行了,打开浏览器,输入网址127.0.0.1:5000,就可以打开主页面了。

sudo修改文件夹名字_用 Python 高效智能管理文件夹相关推荐

  1. 多个python文件相互调用_用 python提取两个文件之间的内容

    我有两个文件: 一个文件叫exemple_data.csv 里面包含3个id,每个id一行 ZINC04203483 ZINC26895155 ZINC03651026 一个文件叫exemple.sd ...

  2. python读取dat文件写入表格_在python中从.dat文件读取和执行计算

    我需要用python读取一个.dat文件,它总共有12列,数百万行.我需要把第2.3和4栏和第1栏分开计算.所以在加载.dat文件之前,是否需要删除所有其他不需要的列?如果没有,如何有选择地声明列并要 ...

  3. python计算文件md5值_用python 正确计算大文件md5 值

    python 计算文件的md5值很方便,但如果只是简单的把文件都入到内存中,大文件会导致问题,一般采用切片的方式分段计算,下面的几个函数可以很好的解决这个问题. 使用 hashlib import h ...

  4. python 上传文件到网络设备_基于python实现上传文件到OSS代码实例

    基础环境 # +++++ 阿里云oss开发指南里都有详细的步骤,在这里整理了一下自己需要的东西 # 确定开发环境,centos默认安装了python2.7 # python -v # 安装python ...

  5. python文件中用逗号分隔_在python中读取逗号分隔文件(包括日期)的最快方式

    我有数据存储在逗号分隔的txt文件中.其中一列表示日期时间. 我需要将每个列加载到单独的numpy数组中(并将日期解码为python datetime对象). 最快的方法是什么(就运行时间而言)? 注 ...

  6. python返回文件行号_用python比较两个文件中内容的不同之处, 并输出行号和内容....

    '''cmpfile.py - 比对两个文件, 如果有不同之处, 打印内容和行号''' import os class cmpFile: def __init__(self, file1, file2 ...

  7. python写入csv文件中添加行_在python中为csv文件输出键添加值

    这是我的输入csv文件. client_ip listener_service listener_port 127.0.0.1 LMNO 123 ::1 PQAR 768 ::1 PQAR 128 1 ...

  8. 图片重命名,命名方式为:文件夹名字 + _ 顺序 + .jpg

    图片重命名,命名方式为:文件夹名字 + _ 顺序 + .jpg import ospath = "C:/Users/123/Desktop/111/"i = 1 j = 1 for ...

  9. python文件名按数字排序_用Python按照文件的名字中包含的数字排序出文件

    使用Python按照文件的名字中包含的数字排序出文件 原来的样式: file_list = ['第10周成绩.xlsx', '第11周成绩.xlsx', '第12周成绩.xlsx', '第13周成绩. ...

最新文章

  1. centos+ffmpeg安装配置+切片
  2. CTFshow 命令执行 web68
  3. 编译php7.0.17报错提示 undefined reference to `libiconv_open'
  4. ReactNative 常见红屏黄屏及终端报错
  5. 线程与进程的控制原语对比
  6. python分析工具有哪些_常用Python数据分析工具汇总
  7. 注解的原理又是怎么一回事
  8. java容易搞混的技术_Java中比较容易混淆的知识点
  9. JavaScript中数组去重汇总
  10. 金蝶财务软件有哪些缺点
  11. 用c语言将学生系统插入音效,增加音效.cpp
  12. 做到心云社客这三点,你也拥有很多网络赚钱机会
  13. 免费简历,ppt模板
  14. Resco MobileForms Toolkit 2010的破解
  15. 【ROS】移动机器人导航仿真(2)——SLAM(gmapping)
  16. python第二课 序列特性
  17. 复购几乎为0的产品,怎么做线上推广?
  18. 2019华为软件精英挑战杯参赛总结
  19. 微软确立新模式:付费Win10成现金流
  20. Android POI 百度地图——周边检索

热门文章

  1. 《程序设计技术》第三章例程
  2. 一题多解 —— $?(命令返回状态)的检验
  3. Tricks(三十五)—— 内积的极简实现
  4. 身份证号第18位的计算
  5. 线性方程组(A是上三角矩阵时)的C++求解
  6. Spring boot常见标签、注解解释
  7. python在线编辑器-在线python编辑器
  8. python 计算机程序设计-计算机二级教程python第一章 程序设计语言
  9. python用什么软件编程-python开发用什么编辑器
  10. python基础语法手册-python语法大全,python语法手册