※ 本文為 MindOcean 轉寄自 ptt.cc 更新時間: 2021-08-12 21:03:26
看板 Gossiping
作者 標題 [問卦] 代問:如何寫出讓人看不懂的Python程式碼?
時間 Thu Aug 12 13:58:11 2021
繼上集,
https://www.ptt.cc/bbs/Gossiping/M.1628230251.A.F0C.html
[問卦] 都這個年代了,頂尖大學教授還讓博後掛名? - Gossiping板 - Disp BBS
朋友的指導教授, 最近弄來了一位經常換工作, 前一陣子才被某資訊科技公司急速趕走,炒魷魚的博後生, 他的前職業是frontEnd工程師, 聽說該博後生是這位教授10幾年前帶畢業的博士生. 該博後生脾氣
![[圖]](https://disp.cc/img/board/Gossiping.jpg)
朋友被指導教授要求給博後論文草稿和實驗程式碼之後,
朋友除了使用推文有建議的拖,慢,等戰術讓博後拿不到,
78博後對我朋友出了新招,
朋友除了使用推文有建議的拖,慢,等戰術讓博後拿不到,
78博後對我朋友出了新招,
博後要求近期和我朋友一起坐在電腦前面交接程式碼,
也要我朋友講解程式碼給他聽,
跑程式給博後看.
我朋友想出一招,
盡量寫出讓博後看不懂的Python程式碼,
講解時亂唬爛一通,
讓博後完全看不懂,也搞不懂整個實驗程式內容.
但是大家都知道Python語言的特性就是程式碼簡單,易懂,能快速理解,
要寫的隱諱艱深難懂,
似乎沒這麼容易?
我朋友拉著我找了很久,
都找不到怎麼才能把Python寫的難懂,
而且還可以跑實驗.
所以,
有沒有
世界上存在一本高手秘笈,
可以把Python寫的讓博後完全看不懂
的八卦?
先代朋友感謝大家的幫忙~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.71.215.133 (臺灣)
※ 文章代碼(AID): #1X5BXrf1 (Gossiping)
※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1628747893.A.A41.html
推 : hello world1F 219.71.16.104 台灣 08/12 13:58
→ : 你壞壞2F 125.227.40.62 台灣 08/12 13:58
推 : 這太容易了八3F 49.217.175.45 台灣 08/12 13:59
推 : 我連我上個月寫的扣都看不懂了4F 223.140.128.71 台灣 08/12 13:59
推 : 加密啊5F 61.221.174.210 台灣 08/12 13:59
推 : 5樓一邊被肛 一邊寫python程式6F 36.238.63.233 台灣 08/12 13:59
→ : 教你一招 不要跟別人說是我教的喔7F 125.227.40.62 台灣 08/12 13:59
→ : 改10樓8F 36.238.63.233 台灣 08/12 13:59
→ : 這哪有什麼難的9F 223.140.128.71 台灣 08/12 13:59
→ : 變數名稱亂取 就看不懂20%了10F 125.227.40.62 台灣 08/12 14:00
推 : 加一堆贅詞、沒用處的函數 20字以上的變數11F 1.160.89.52 台灣 08/12 14:00
→ : 樓上太狠了吧 那我再加碼一招12F 125.227.40.62 台灣 08/12 14:01
※ 編輯: ruthertw (111.71.215.133 臺灣), 08/12/2021 14:01:52推 : 不要縮排13F 165.84.247.15 印度 08/12 14:01
→ : 寫c然後用Python call阿,source code砍14F 114.43.23.241 台灣 08/12 14:01
→ : 把關鍵的東西包成dll15F 39.12.97.56 台灣 08/12 14:01
→ : 掉16F 114.43.23.241 台灣 08/12 14:01
→ : 有計算式的話 全部寫在同一行 越長越難讀17F 125.227.40.62 台灣 08/12 14:01
推 : 亂改架構 名字亂取很容易18F 118.232.7.55 台灣 08/12 14:02
推 : 就改成C++寫,一堆呼叫含式讓他看不懂19F 42.73.18.81 台灣 08/12 14:02
→ : 關鍵字:編譯20F 117.56.223.223 台灣 08/12 14:02
→ : 抓一隻猴子來敲鍵盤 總有一天寫出來21F 27.52.137.222 台灣 08/12 14:02
推 : 全部寫注音22F 36.226.90.251 台灣 08/12 14:03
噓 : 就一些垃圾程式碼,值得花心思喔23F 112.104.81.227 台灣 08/12 14:03
推 : py2exe24F 140.238.51.144 日本 08/12 14:03
→ : 人生還很長,有這個必要嗎?25F 112.104.81.227 台灣 08/12 14:03
→ : 有必要嗎,看到是你寫的,根本沒人想看26F 1.200.97.75 台灣 08/12 14:04
推 : 他有心要讓他過 做再多也沒用吧27F 220.137.92.75 台灣 08/12 14:05
→ : 變數名稱取代成AA,BB,CC,保證一星期後就28F 36.225.219.143 台灣 08/12 14:05
推 : 一直呼叫 重包命名函式29F 220.133.244.89 台灣 08/12 14:05
→ : 太有自信了吧,先確定原版的有人能看懂吧30F 220.134.231.214 台灣 08/12 14:05
→ : 沒人想看你的code別浪費時間31F 27.147.2.237 台灣 08/12 14:06
→ : 不如找個地方設timer 讓他示範爆炸32F 220.137.92.75 台灣 08/12 14:06
推 : 把程式碼全部齊頭33F 27.242.5.11 台灣 08/12 14:06
推 : MACRO_NAME34F 180.29.102.240 日本 08/12 14:06
推 : 不要呼叫函數35F 111.71.91.195 台灣 08/12 14:07
推 : 幫他縮排整理一下囉36F 220.143.180.199 台灣 08/12 14:07
→ : 用c++寫lib然後py引入啊顆顆37F 61.230.197.61 台灣 08/12 14:07
推 : google 忍者程式碼38F 61.216.78.140 台灣 08/12 14:07
推 : 讓他跑很慢應該也不少高手可以39F 223.137.131.189 台灣 08/12 14:07
推 : PHP: 嫩40F 114.136.186.80 台灣 08/12 14:08
推 : 弄一堆遞迴跟判斷式+不要斷行41F 223.200.9.199 台灣 08/12 14:08
推 : 宣告用[a-z][0-9]42F 61.230.36.166 台灣 08/12 14:08
推 : 善用遞迴跟錯誤的註解還有沒有意義的43F 27.242.68.180 台灣 08/12 14:08
→ : 變數
→ : 變數
推 : 你確定這不是在搞自己嗎45F 111.71.35.208 台灣 08/12 14:09
推 : 問鴇鴇處長呀46F 118.163.47.25 台灣 08/12 14:10
推 : module全部自己改寫47F 73.70.12.53 美國 08/12 14:10
推 : 看一段發現問題很多就被退了吧48F 223.139.134.225 台灣 08/12 14:10
推 : import numpy as plt49F 110.30.9.231 台灣 08/12 14:10
推 : 取變數名時1 I l混用50F 140.116.204.35 台灣 08/12 14:11
推 : 變數用英文+數字隨便湊一湊就夠崩潰了51F 42.73.26.73 台灣 08/12 14:12
推 : 交接不過被退回來不是搞死自己而已嗎52F 42.77.102.199 台灣 08/12 14:14
→ : 看起來一樣的縮排 其實是空白跟tab混53F 111.243.30.155 台灣 08/12 14:17
推 : import pandas as uber54F 180.217.213.121 台灣 08/12 14:17
推 : 13樓讚喔!55F 114.137.200.120 台灣 08/12 14:18
推 : 變數名稱亂設 來回呼叫 關鍵包成exe56F 39.13.135.152 台灣 08/12 14:19
→ : ctrl+空白鍵,用全形空白。保證debug哭57F 114.137.200.120 台灣 08/12 14:19
→ : 出來
→ : 出來
推 : 一行縮排用tab 下一行用space以此類推59F 118.165.55.120 台灣 08/12 14:24
推 : 變數用亂數取名 小功能呼叫一大串函式60F 111.252.181.168 台灣 08/12 14:24
推 : source code先編碼再交出去61F 36.232.218.72 台灣 08/12 14:31
推 : 變數名稱 x1 x2 x3 x4....x10062F 59.124.143.199 台灣 08/12 14:31
→ : 亂呼叫沒意義的函數 每五行就亂插
→ : 亂呼叫沒意義的函數 每五行就亂插
噓 : 你是不是想害他畢不了業64F 39.9.106.120 台灣 08/12 14:32
→ : import as 亂寫 之後別放在開頭65F 182.233.139.5 台灣 08/12 14:32
推 : 叫那個博後自己跟你朋友要 然後錄音存66F 180.217.194.85 台灣 08/12 14:33
→ : 證 之後爆卦 讓博後之後進不了好公司
→ : 證 之後爆卦 讓博後之後進不了好公司
→ : 還給假code勒68F 39.9.106.120 台灣 08/12 14:33
推 : 變數命名無意義就夠頭大了69F 60.250.30.118 台灣 08/12 14:33
噓 : 全部變數取代成0Oo70F 114.253.38.191 中國 08/12 14:36
推 : 全部編譯成機械碼宣告成陣列 一行jump進去71F 218.161.70.177 台灣 08/12 14:39
→ : 執行完畢 這樣也算open source
→ : 執行完畢 這樣也算open source
推 : 變數函數用斯拉夫語系取名73F 112.104.157.226 台灣 08/12 14:40
→ : 怎麼可能看不懂 都用語言的特性語法看懂74F 118.170.184.114 台灣 08/12 14:40
→ : 也只是時間問題而已 除非你不交code 我就
→ : 沒看過有sourceCode還能看不懂的程式
→ : 也只是時間問題而已 除非你不交code 我就
→ : 沒看過有sourceCode還能看不懂的程式
噓 : code obsfucator77F 220.133.6.84 台灣 08/12 14:45
推 : 寫成 oop 然後不給流程圖 ㄟㄟ78F 223.136.157.241 台灣 08/12 14:51
→ : 參數名字亂寫,寫abcde79F 114.43.179.85 台灣 08/12 14:53
推 : 縮排空一格就好80F 42.73.36.46 台灣 08/12 14:54
推 : 變數abcd81F 218.35.157.99 台灣 08/12 14:54
→ : Python最容易種搞到看不懂,沒型態你82F 114.136.30.126 台灣 08/12 14:55
→ : 又把變數亂設名稱,保證難懂
→ : 又把變數亂設名稱,保證難懂
→ : 包成dll 再用API去call 再用Service84F 211.75.48.190 台灣 08/12 14:55
推 : 變數取亂七八糟又長又相似就很難讀了85F 1.200.71.153 台灣 08/12 14:56
推 : 明明有內建函式但還是使用套件,然後一樣86F 114.43.179.85 台灣 08/12 14:56
→ : 功能的部分跟套件交換使用
→ : 功能的部分跟套件交換使用
推 : i=i++(++i)88F 39.13.96.70 台灣 08/12 14:56
→ : 時間真的很多89F 220.129.61.100 台灣 08/12 14:57
推 : 每一行都倒著寫啊90F 223.141.116.9 台灣 08/12 14:58
推 : 全部 call 在一行阿91F 101.12.98.180 台灣 08/12 15:03
→ : 垃圾程式碼自己刪掉好嗎?別浪費別人92F 114.137.223.113 台灣 08/12 15:07
推 : Class建一堆 分很多檔案93F 223.137.188.15 台灣 08/12 15:07
→ : 然後亂繼承 一個一個trace就累死人了
→ : 然後亂繼承 一個一個trace就累死人了
推 : overlay 常用物件,global 跟 local物件大95F 223.140.168.24 台灣 08/12 15:08
→ : 鍋炒
→ : 鍋炒
推 : 換實驗室吧 讓自己的心情一直很差也不97F 69.197.153.178 美國 08/12 15:12
→ : 是辦法 真的吞不下去就換個地方做研究
→ : 總比讓壞人得逞 自己又氣不過內傷...
→ : 是辦法 真的吞不下去就換個地方做研究
→ : 總比讓壞人得逞 自己又氣不過內傷...
推 : 博後有廢到看別人的東西 還分不出假貨?100F 42.72.184.183 台灣 08/12 15:15
噓 : 包成dll 說這是專利就好惹==101F 36.234.139.162 台灣 08/12 15:17
推 : 就全刪掉阿 為啥一定要跑成功給他看??102F 36.225.48.222 台灣 08/12 15:18
推 : import numpy as pd103F 39.8.33.70 台灣 08/12 15:19
推 : 代碼混淆啊,可以弄到作者都看不懂104F 1.200.99.248 台灣 08/12 15:19
推 : 一堆反社會人格 笑死105F 39.12.226.112 台灣 08/12 15:20
推 : 全部寫成反射106F 114.136.113.158 台灣 08/12 15:20
推 : 我return 你的 return107F 36.234.139.162 台灣 08/12 15:21
推 : 每個 def 都用class包阿 然後全部互108F 115.43.129.41 台灣 08/12 15:22
→ : 相繼承
→ : 相繼承
推 : 算了阿 就先留下證據 等畢業後了再爆出來110F 101.136.131.149 台灣 08/12 15:22
噓 : 函式包函式再包函式 然後每個函式功能不111F 42.72.171.82 台灣 08/12 15:23
→ : 明確
→ : 明確
推 : 遞迴弄多、複雜一點,三五個function circu113F 140.113.216.69 台灣 08/12 15:24
→ : lar call,執行的flow越亂越好
→ : lar call,執行的flow越亂越好
→ : 註解跟實際做的事情兜不上就好115F 42.72.171.82 台灣 08/12 15:24
推 : 寫一堆自定義函數阿116F 111.252.25.149 台灣 08/12 15:25
→ : 變數改成無意義的名稱 包dll 註解亂調117F 223.140.102.35 台灣 08/12 15:25
→ : 這篇推文怨念有點重118F 220.134.131.232 台灣 08/12 15:25
→ : 宣告 global 變數,在其他函式用同名的loca119F 140.113.216.69 台灣 08/12 15:25
→ : l 變數最好迴圈裡面再用同名另一個變數
→ : l 變數最好迴圈裡面再用同名另一個變數
推 : 其實光變數命名不含意義就搞死了ex.x1~x99121F 220.134.131.232 台灣 08/12 15:30
推 : 亂取變數名會被發現在亂搞吧,這樣不能畢業122F 140.113.216.69 台灣 08/12 15:31
→ : 就本末倒置了
→ : 最好就是讓博後以為他懂,改下去爆掉不知道
→ : 爆在哪
→ : 就本末倒置了
→ : 最好就是讓博後以為他懂,改下去爆掉不知道
→ : 爆在哪
推 : 建議買無暇程式碼來看然後反者做126F 223.139.104.80 台灣 08/12 15:33
推 : 乾脆改成執行完會偷偷修改原始碼好了127F 42.72.171.82 台灣 08/12 15:35
推 : 我是覺得沒必要 感就算完整的送給他他也128F 111.249.0.37 台灣 08/12 15:43
→ : 變數一律小寫129F 27.247.3.216 台灣 08/12 15:43
→ : 會弄亂130F 111.249.0.37 台灣 08/12 15:43
→ : 呼叫來呼叫去131F 114.137.202.135 台灣 08/12 15:46
推 : 關鍵程式包dll有效,以後沒人能動132F 1.34.217.194 台灣 08/12 15:57
推 : 外包中國工程師一份133F 122.117.0.121 台灣 08/12 16:00
推 : 找看有沒有混碼器 或是自己把變數用134F 223.141.208.39 台灣 08/12 16:03
→ : 類凱撒密碼混淆
→ : 類凱撒密碼混淆
推 : 幹嘛要搞人?136F 211.22.206.217 台灣 08/12 16:05
推 : 所以…沒有版控?不然怎麽改都沒用吧137F 220.143.93.160 台灣 08/12 16:14
推 : 裡面寫幹你娘教授 然後說是博後加上去的138F 110.30.64.163 台灣 08/12 17:12
→ : 全部都寫成一行啊= =139F 114.33.176.49 台灣 08/12 17:12
→ : python一些高階語法可以寫得很難看懂
→ : python一些高階語法可以寫得很難看懂
推 : 用裝飾子通通包一遍141F 111.82.52.214 台灣 08/12 17:46
推 : 我三天前自己寫的扣今天就看不懂142F 42.72.230.39 台灣 08/12 17:52
推 : 變數用字母+底線 混用大小寫 aAa a__ aAA_143F 140.112.235.23 台灣 08/12 18:09
推 : 再寫個加密程式就好了,變成亂碼144F 101.9.32.90 台灣 08/12 18:10
→ : 先把變數名稱設定好在最前段,之後145F 114.136.74.100 台灣 08/12 18:12
→ : 貼在記事本再把變數取代掉= =後面的
→ : 程式不斷互call就行
→ : 貼在記事本再把變數取代掉= =後面的
→ : 程式不斷互call就行
推 : 變數都設iiii(大寫)跟llll 用不同148F 61.231.181.18 台灣 08/12 18:17
→ : 的數量去分
→ : 的數量去分
→ : 不要寫註解150F 111.255.216.184 台灣 08/12 18:59
→ : 你用不是英文的字母來寫程式就可以了151F 118.166.231.143 台灣 08/12 20:24
推 : 嫩才用亂碼當變數 當然是要混淆字義152F 61.230.107.88 台灣 08/12 20:50
推 : 垃圾學長大概跟教授特殊交友吧153F 114.34.36.80 台灣 08/12 20:55
推 : 假設一個變數應該要是浮點數 初始定義成l154F 198.90.109.73 美國 08/12 21:01
→ : ist str之類的 中間再默默改成你要的浮點
→ : 數
→ : ist str之類的 中間再默默改成你要的浮點
→ : 數
噓 : 全部用regular expression寫157F 114.44.232.147 台灣 08/12 21:02
--
※ 看板: Gossiping 文章推薦值: 0 目前人氣: 0 累積人氣: 454
回列表(←)
分享