关于《小绿和小蓝》机器人篇(1)中的代码的考据


今天,在《小绿和小蓝》机器人篇(1)中,我注意到了屏幕上的代码:

《小绿和小蓝》机器人篇(1) 4:09

我一眼就能看出来这是Python的代码。不过这是从哪里来的代码呢?

我首先就想到从GitHub上找。在GitHub上找一行代码算是比较容易的:只要把这张图上的某一行搜索一下,在搜索结果中选“Code”就可以了。

GitHub的搜索代码功能

不过搜索是一个技术活,我找来不下十轮才找到大体的范围。

首先,我找含有pickle.dump(self.sampleData, f)的代码,出现的结果很多。由于搜索语句中带有空格,GitHub把这语句断开了,很多结果根本对不上。我突然发现一个全语句匹配的结果:Vroala/TYS.Client的./TEST/MyWindow_1.0ver.py (https://github.com/Vroala/TYS.Client/blob/master/TEST/MyWindow_1.0ver.py)。

TYS.Client的相关代码

抛开注释不说,除了示例数据不一样外,其他的结构上几乎完全一样。

这个仓库的开发者是韩国人,我看不懂韩文,只能从README.md中看出来这是一个我的世界的服务器客户端。仅此而已。

之后我又用代码的其他部分作为搜索语句,但结果更糟糕。

不过,我突然发现代码还是有一些差别的——上面的图的第24行中,tableWidget那个地方在动漫中的是resultTable。于是我就找带有self.resultTable.setRowCount(len(resultData))的代码,只有两个结果:

搜索这一条语句时,只有两个结果

抛开注释和示例数据,两个代码几乎完全一样,而且和动漫中的代码几乎完全一样。

parsher/Python-practice的./gui/XWindow.py的代码片段

看起来都是韩国人写的。不过我没找到和动漫中的代码完全一致的代码(包括注释和示例数据)。

我发现parsher/Python-practice (https://github.com/parsher/Python-practice)的介绍中提到了代码来源于一个网站:

all codes - Copy rights on http://pythonstudy.xyz || I just practice and do adjustment on somewhere.

于是我就进了这个网站,很不幸的是,这是一个韩文网站。我不想借助翻译工具,怕翻译工具翻译的一团糟,只能靠猜测来访问网站。

就是这个网站……

从之前的代码来看,这是实现PyQt的GUI界面的代码。于是我找来几个页面,就找到了代码的来源页面(http://pythonstudy.xyz/python/article/109-PyQt-QtDesigner-%EB%A9%94%EC%9D%B8%EC%9C%88%EB%8F%84%EC%9A%B0)。

代码来源

随便说一下,动漫里面的代码有一段注释:# Show MainWindow。这段代码里面对应的位置的注释是# 메인윈도우 보이기。意思是相同的。

我又从谷歌中找带有这段代码的网页,最终只找到两个符合要求的网页,一个是这个网页,另一个抄了这个网页。

我只能找到这里了。

实际上,这段代码就是实现基于PyQt的GUI界面的代码,和人工智能、机器人什么的没有任何关系。看来制作方是随便找的代码。

不过让我惊讶的是,这段代码在很多仓库都出现过,而且都是以韩文的形式出现的。而为什么动漫的制作方会使用这段代码,为什么动漫里面的代码的相关地方都改成了英文,而且示例数据都是不同的,我也无法给出确切的答案。

这个还有待进一步的探索。但是,谁还会有兴趣考究下去呢?


文章作者: 丁俊尧
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 丁俊尧 !
  目录