早上看到一篇文章,于是准备复制粘贴代码来试试,让自己高兴一下。((20条消息) 桌面太单调?一起用Python做个自定义动画挂件,好玩又有趣!_hhladminhhl的博客-CSDN博客)
结果在进行的时候遇到了很多问题,首先是没有相关原材料(即视频和gif图),于是根据原文章中的链接去到以前的文章寻找解决方式,于是就找到了you-get这款软件。但是使用you-get下载之后,视频格式变成了flv,于是上网查了flv到底是什么格式,于是得到以下答案:
FLV 是FLASH VIDEO的简称,FLV流媒体格式是随着Flash MX的推出发展而来的视频格式。由于它形成的文件极小、(源于百度百科)
但是由于自己并不像去做视频方面的工作,于是就直接将本来要用视频做的gif图片拿到手了,方法是直接从网上复制粘贴。
之后继续进行下一步发现了更多的问题。于是想着自己只是想要桌面宠物,就开始重新检索。找到一篇很详细的只有代码的博客。((20条消息) Python实现桌面宠物_hxxjxw的博客-CSDN博客_python桌面宠物)
重新开始简单的工作,但是复制代码的时候发现了两个自己没有安装的模块。cfg和pyQt5。于是在pycharm中进行安装,结果报错。经过一番检查后,发现cfg的版本落后了,但是有一个名为cfg2的模块可用,而安装完成之后使用cfg就可以使用模块而不是cfg2 。很奇怪的一件事情。
另一方面开始配置pyQt5,首先是找到了文章(https://www.cnblogs.com/blog-rui/p/11119037.html),很轻松就完成了前半部分的安装环节,可是到了设置PyQt-Designer的时候发现根本就没有找到designer.exe,于是放弃了这一步,然后发现代码根本无法运行,推测这一步是至关重要的。但是重新安装PyQt5,但是pip只是说已经安装成功了。
于是考虑是否为自己的电脑中安装的python目录太过杂乱所致。准备在虚拟机中重新尝试。
但是在虚拟机里面安装的时候pip都用不了,报错:ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied。只是粗略看出是权限问题。根据提示在pip install 后面加上--user后就解决了。
在安装完pyqt5-tools之后,在文件夹C:\Python39\Lib\site-packages中查找的时候却发现缺少此文件夹,于是重新安装,结果发现在pip中可以找到。于是查看路径,并没有找到。
之后发现在我的电脑路径框中输入C:\Users\86175\AppData\Roaming\Python\Python39\site-packages\qt5_applications\Qt\bin,结果找到了designer.exe
得知某些路径并不会显示在我的电脑,找起来也很麻烦。于是加入了系统路径,可在系统中使用cmd开启designer。之后按照教程配置成功。(https://www.cnblogs.com/linyfeng/p/11216494.html)
就在我以为万事俱备的时候,小心翼翼点开pycharm,结果发现找不到run的选项。但是这个不是重要的。于是打开cmd就直接运行。
于是出现了以下:
C:\Users\86175\Desktop>python -m desktopbaby.py
C:\Python39\python.exe: Error while finding module specification for 'desktopbaby.py' (ModuleNotFoundError: __path__ attribute not found on 'desktopbaby' while trying to find 'desktopbaby.py'). Try using 'desktopbaby' instead of 'desktopbaby.py' as the module name.
C:\Users\86175\Desktop>python -m desktopbaby
Traceback (most recent call last):
File "C:\Python39\lib\runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Python39\lib\runpy.py", line 87, in _run_code
exec(code, run_globals)
File "C:\Users\86175\Desktop\desktopbaby.py", line 138, in <module>
pet = DesktopPet()
File "C:\Users\86175\Desktop\desktopbaby.py", line 22, in __init__
self.pet_images, iconpath = self.randomLoadPetImages()
File "C:\Users\86175\Desktop\desktopbaby.py", line 81, in randomLoadPetImages
pet_name = random.choice(list(cfg.PET_ACTIONS_MAP.keys()))
AttributeError: module 'cfg' has no attribute 'PET_ACTIONS_MAP'
第一次是因为给文件名加了后缀,导致python认为它是模块。之后去掉后缀之后显示cfg的包有问题,原来从cfg2虽然可以替代cfg工作,但是还是有些不同之处。
在网络上查找,但是找到的内容都没法判断究竟是什么,甚至目前还不能找到足够的信息来来了解cfg模块是作何使用的。
在忙碌了一个下午之后,最终还是决定放弃这个方案。
然后想到好不容易搞定了pyqt5,还是搞一点东西来比较好。于是想到了之前看到的音乐播放器的代码。可惜的是作者只是给出了所谓的核心代码,也就是说直接复制粘贴来并不能使用。
索性知道了designer的位置。
想到今天探索过程中面对的诸多隔阂,不免有些伤感。可能也正说明未来的路还有很长吧。另外,直接就能够拿来用的代码也许应该去github上面找找。
在github上面找到一个,下载了代码,可是并不是很好找到如何使用。
于是最终还是决定放弃了这个阶段的学习。