8.6项目:多重剪贴板的详细解释

本小白在学习《8.6项目:多重剪贴板的详细解释》这一课时被bat文件和cmd小黑窗狠狠教育了。

查了很多资料都惜墨如金解释很少,对小黑窗cmd和bat都不讲,毕竟,这是基础的低级知识,谁会愿意给小白讲清楚呢。

没关系,我弄明白了。 现在给小白讲讲这一课。

接下来用最简单的教程教小白们怎么实践这一课的内容。

书本的解释不是很详细,经过我查找多方资料才知道怎么设置bat文件和cmd小黑窗,废话不多说,直接开始:

第一步创建test01.py文件,注意把py文件和bat文件放在一起,文件夹路径不能含有中文和空格。

第二步写下这2行代码,第一行#!python3表示用python3来运行这个文件。

第三步创建test01.bat文件。可以直接创建txt文件然后改.bat后缀。

第四步右键点击编辑,进入bat里面写入这两行,如图所示:

@py.exe py文件的绝对路径 %*

@pause

第5步设置环境变量。如图

win7在变量值末尾输入;然后把你py文件所在文件夹的位置填进去,

如果你的py文件绝对路径是  D:\py\test.py 则填入 ;D:\py\

意思是进入D:\py\这个路径就能找到你的py文件。

win10的话 编辑 新增 填入D:\py文件的地址,末尾记得加上\

填完后记得一路点击确定确定确定确定

第6步打开cmd,输入test01然后回车键

就会发现你已经成功从小黑窗启动你的py文件了。

这个过程的原理就是cmd小黑窗输入test01→小黑窗就会在环境变量找到你刚才填的路径→找到test01.bat→小黑窗打开bat执行bat里面的代码:

@py.exe E:\PythonTest\test01.py %*
@pause

bat里面的代码第一行意思是用python.exe运行E:\PythonTest\test01.py这个文件

@pause 意思是小黑窗会暂停,并且显示:请按任意键继续....

然后你的py文件就这样最终被运行了。有点绕但是不难理解。

如果有说错请纠正我。

---------------------------------------------------------------------------------

然后说说书中给出的多重剪贴板的代码,注释我用中文写好了,大伙看注释就能看懂这些代码了,现在,把这段注释后的代码填入你刚才创建的test01.py中保存。

#!python3
print('看到这条信息,表示你已经找到test01.py了。')

# 导入sys模块、pyperclip模块、shelve模块
import sys,pyperclip,shelve

# 打开一个shelve文件,将其命名为mcbShelf
mcbShelf = shelve.open('mcb')

# 检查传入的参数数量,如果len(参数)数量为3个,并且 参数[1] 为save,
if len(sys.argv) == 3 and sys.argv[1].lower() == 'save':
    #则你现在鼠标的剪贴板内容作为值,保存到mcbShelf[参数[2]]中.
    mcbShelf[sys.argv[2]] = pyperclip.paste()
    print("你的传入参数有3个,并且参数[1]为'save',你现在的剪贴板内容作为值,保存到mcbShelf['%s']"%sys.argv[2])

# 如果参数数量为2,检查第一个参数
elif len(sys.argv) == 2:
    # 如果第一个参数为list,则将mcbShelf中的所有键复制到剪贴板
    if sys.argv[1].lower() == 'list':
        pyperclip.copy(str(list(mcbShelf.keys())))
        print("你的传入参数有2个,并且 参数[1] 为'list',mcbShelf的所有键已进入你的鼠标剪贴板。")

    # 如果第一个参数存在于mcbShelf中,则将对应的值复制到剪贴板
    elif sys.argv[1] in mcbShelf:
        pyperclip.copy(mcbShelf[sys.argv[1]])
        print("你的传入参数有2个,并且 %s 存在于mcbShelf,其对应的值填入你的鼠标剪贴板。"%sys.argv[1])

# 关闭mcbShelf
mcbShelf.close()

这段python代码其实就是3个if判断逻辑:

1.判断你在小黑窗输入的参数个数如果是3个,并且你的 参数[1] 是save,则将你的 参数[2]作为键保存在mcbShelf里面,你的鼠标剪贴板的内容则作为 对应的值保存进去。

例如:输入test01 save 地球

则地球为键,剪贴板为值,被保存进去了,

2.判断你在小黑窗输入的参数个数如果是2个,并且你的 参数[1] 是list,则将mcbShelf所有的键送到你的鼠标剪贴板。比如刚才的地球。

3.判断你在小黑窗输入的参数个数如果是2个,并且你的 参数[1] in mcbShelf

则将mcbShelf[参数[1]]保存到你的剪贴板。

以下是运行结果:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值