[请益] 代问:如何写出让人看不懂的Python程式码?

楼主: ruthertw (小叶老大)   2021-08-12 14:03:36
继上集,
https://www.ptt.cc/bbs/Gossiping/M.1628230251.A.F0C.html
朋友被指导教授要求给博后论文草稿和实验程式码之后,
朋友除了使用推文有建议的拖,慢,等战术让博后拿不到,
78博后对我朋友出了新招,
博后要求近期和我朋友一起坐在电脑前面交接程式码,
也要我朋友讲解程式码给他听,
跑程式给博后看.
我朋友想出一招,
尽量写出让博后看不懂的Python程式码,
讲解时乱唬烂一通,
让博后完全看不懂,也搞不懂整个实验程式内容.
但是大家都知道Python语言的特性就是程式码简单,易懂,能快速理解,
要写的隐讳艰深难懂,
似乎没这么容易?
我朋友拉着我找了很久,
我们都找不到怎么才能把Python写的难懂,
而且还可以跑实验.
所以,
有没有
世界上存在一本高手秘笈,
可以把Python写的让博后完全看不懂?
先代朋友感谢大家的帮忙~
作者: MOONY135 (谈无欲)   2021-08-12 14:07:00
我不知道该表示什么 该说这跟软件版无关吗只要他说一句他看不懂 你就不要想毕业了 就那么简单砸自己的宝贵时间陪他玩是最笨的做法
作者: BlacksPig (Black Handsome s Pig)   2021-08-12 14:10:00
八卦板不是很多人回了?
作者: MacPerson (Gary)   2021-08-12 14:11:00
不注记type hint, docstring, annotation 日子一久 连我本人都不知道当初在写什么
作者: joekaojoekao (bingroom)   2021-08-12 14:16:00
用一堆虾机巴 decorator 和 wrapper 保证懵
作者: acgotaku (otaku)   2021-08-12 14:20:00
开源架构的重要性,用架构有时不会更好,但强制架构一制性
作者: ntpuisbest (阿龙)   2021-08-12 14:38:00
浪费自己时间,我程式码都放在HACKMD开放的
作者: viper9709 (阿达)   2021-08-12 14:50:00
推一楼
作者: DarkIllusion (′・ω・‵)   2021-08-12 14:56:00
同意一楼 你在浪费时间
作者: Murasaki0110 (麦当劳欢乐送)   2021-08-12 15:13:00
结局就是他多凹你3天讲到他懂
作者: DCTmaybe (竹竹人)   2021-08-12 15:14:00
这一篇有13p我觉得太多了
作者: aaa1234136 (淡水活鱼)   2021-08-12 15:14:00
编译后再反编译 程式码再交出去
作者: lturtsamuel (港都都教授)   2021-08-12 15:31:00
教你大绝 把方法用closure存在一个map里面 要呼叫的时候就用字串查找出来 而且字串不要是字面常量 最好传递好多层中间拼接或取代搞得面目全非
作者: sxy67230 (charlesgg)   2021-08-12 15:31:00
decorator跟wrapper又不难懂,应该说真的有心没有难懂的东西啦
作者: lturtsamuel (港都都教授)   2021-08-12 15:33:00
更高级方法 用higher order function把多个闭包组合起来 传来传去 让人无法从code想像现在呼叫哪个函式
作者: Kazimir (Kazimir)   2021-08-12 15:33:00
python要写得很难懂 就是要深刻的练习一行文的精髓
作者: sxy67230 (charlesgg)   2021-08-12 15:35:00
只要IO明确,说真的有能力的虾鸡巴的code都可以看得懂,还不如不要搞自己,至于没能力的你就算写得很好,他一样也会一直找你找到你烦。
作者: followwar (嫌疑犯X的献身)   2021-08-12 15:37:00
干嘛搞自己 毕业咖实在 你还可以收集证据
作者: lturtsamuel (港都都教授)   2021-08-12 15:44:00
另一个思路 去看一下什么是 Fragile base class problem,一个物件导向的经典失败案例,把你的类别架构弄得很容易发生那种问题让父类别的函式无意义地修改自身状态 这么一来只要继承者呼叫函式的顺序稍微有错就会导致很难debug的问题
作者: gs8613789 (Shang6029)   2021-08-12 15:52:00
把OOP用的超级复杂,每个function都封装一堆,同样的变量名字一堆不同型态
作者: NCUking (中大王)   2021-08-12 15:53:00
超长函式加上破英文命名就够了啦
作者: lturtsamuel (港都都教授)   2021-08-12 15:55:00
上面两种思路组合起来 所谓内部状态 是不是也可以是闭包呢? ^^
作者: testPtt (测试)   2021-08-12 15:56:00
import ctypes and call asm
作者: Louis5213 (slash5213)   2021-08-12 16:07:00
变量都用123abc
作者: elements (Helianthus annuns)   2021-08-12 16:13:00
不要以为自己写的 quality 好到人家看的懂,就算一行一行教过还是会忘记啦
作者: Cprimer (~~)   2021-08-12 16:27:00
不如认真写leetcode :D
作者: sherees (ShaunTheSheep)   2021-08-12 16:34:00
https://youtu.be/MTCYhbfSAuA虽然我是觉得不要搞自己 赶紧毕业比较实在啦
作者: hpyhacking (骇人听闻)   2021-08-12 16:58:00
请购买忍者程式码一书
作者: sooge (老衲)   2021-08-12 16:58:00
这里都python 大神是不是一堆奇奇怪怪的东西
作者: hpyhacking (骇人听闻)   2021-08-12 17:00:00
https://lenchen.medium.com/忍者程式码-ninja-code-cc5e4a70bafc
作者: bheegrl   2021-08-12 17:12:00
自信点,就算你认真写他也不一定看得懂
作者: zxcasdjason1 (nice_Sky)   2021-08-12 17:40:00
这篇在干嘛 快被笑死 XD
作者: brianhsu (坟墓)   2021-08-12 17:41:00
搞自己干嘛,快点毕业才是是正途
作者: wahaha279 (哇哈哈:3)   2021-08-12 17:47:00
去读ninja code
作者: BRN ( )   2021-08-12 18:05:00
生命应该要浪费在更爽的事情上面 XDDD
作者: xoy232 (鬼岛希特勒)   2021-08-12 18:30:00
cython 搭配编译特殊指令配c++
作者: MOONY135 (谈无欲)   2021-08-12 18:45:00
天下第一印*大会正式开始
作者: soccer103 (Ferrari)   2021-08-12 18:52:00
看了前文:112理工读到博士还走台湾前端..实在浪费教学资源前文看完觉得随便交接不要乱反正他一定也看不懂
作者: WaterLengend (Leeeeeeeeooooooo)   2021-08-12 19:25:00
认真回,我公司外包给中国码农的案子的特点是不会用DI,不会用interface,到处都用复制的一大堆,delivery/usecase/repository全部混在一起,里面还会包private variable当作flag去做判断,最后封装起来给外层使用,给你参考,不用谢了。
作者: brianhsu (坟墓)   2021-08-12 19:28:00
真的,曾经有份工作要接手对岸的程式码,本来进去前也觉得没什么,但我看到程式码后就下定决心要离职了。
作者: WaterLengend (Leeeeeeeeooooooo)   2021-08-12 19:35:00
对了,还有用一堆public var宣告在最外层,大家都用得到,struct里面指标包著另一个sturct包了好几层,里面还会有阵列,动不动就index out of range。从package name到variable name可以命名的全部乱命名,有缩写,有罗马拼音。到处都用hash map没看程式码真不知道资料结构是什么。一个package可以搞定的事情复制成好几份,最后随便要改就是import cycle,连complier都不行,啾咪。
作者: lukelove (午睡)   2021-08-12 20:26:00
class convention把他弄的像function 实作让他call起来乱七八糟 data handler让他其慢无比 能向量化的全让他for loop
作者: charliebitme (查理咬我)   2021-08-12 20:30:00
用pycrypto把专案大包小包 骗博后那是call外部的?
作者: newking761 (J三小)   2021-08-12 20:59:00
把他改成C++
作者: pttano (pttano)   2021-08-12 21:01:00
把关键function build成so file不给看啊
作者: splitline (台ㄎ废文王)   2021-08-12 21:54:00
改到看不懂很简单啊,难在你要让别人看不出你在刻意让他看不懂
作者: viper9709 (阿达)   2021-08-12 22:20:00
推文的经验好恐怖XD
作者: Gaogaigar   2021-08-12 23:55:00
光是命名用罗马拼音+缩写就很屌了 因为跟台湾拼法不同还是而且还是C++
作者: mathrew (Joey)   2021-08-13 05:11:00
坦白说,你正常写,对方也不见得看得懂,你该做的是收集证据,然后毕业后再去检举
作者: k798976869 (kk)   2021-08-13 07:38:00
先毕业最重要 要挂就给他挂啊 年轻人就是年轻人
作者: baileegunlin (树)   2021-08-13 07:48:00
obfuscator
作者: hasroten (赋洛流)   2021-08-13 08:56:00
ninja style
作者: ssd860505da (JAGER)   2021-08-13 09:18:00
文件开起来只有一行 所有断行都用 \变量名称取超级长、乱码加无意义的混乱code所有code style违反PEP8保证看了直接爆气但是其实可以black .直接校正就是了或是把code分散在很多module,import来import去,分很多nested,加深trace code的难度然后import * 让他不知道你在import什么
作者: a1982213 (Hasta la vesta!)   2021-08-13 11:12:00
你朋友要毕业了吗 如果是的话 反正讲了不会还是不会 就只教那一遍就好
作者: NCTUFAIWEN (交大废文王子)   2021-08-13 11:58:00
浪费人生在搞这些没有比较赚啦,到最后一定是你最输
作者: abola921 (南港金城武)   2021-08-13 16:27:00
给修哲学的博后来review就好,应该不会讨论扣
作者: r40491101 (Willian)   2021-08-14 18:35:00
可是看不懂,通常都是交接的人的问题……很难归类到被交接人的智商问题……多半是交接人的无意或是蓄意……QQ
作者: bmiss (花草七下)   2021-08-14 19:27:00
即便简单,只要长一点,脑子就不灵光了
作者: superpandal   2021-08-16 00:49:00
以上可以证明这行在表现上很看机运的 大家都不希望被人坑当然随便解是可以的 只是就与写文档一样 不喜欢写文档也不喜欢别人不写文档这也是需要闭源的原因之一 谁会帮助曾经整蛊过自己的人

Links booklink

Contact Us: admin [ a t ] ucptt.com