Re: [問卦] 原本寫c後來改python覺得很不舒服正常嗎
※ 引述《q6534gas1793 (Ming)》之銘言:
: 原本一開始是先學c然後c++
: 最近才去學python
: 發現寫起來特別不舒服
我也是先學 C,再學 C++,之後才學 Python,但我感到...
我宅我色我舒服
: 雖然明明更簡單方便
: 很容易看出成果
: 也不用管一堆格式括號型態
: 也一堆插件可以用
: 但是總是覺得很奇怪很莫名
: 所以原本寫c後面再換成python
你可以在 Python 的程式碼裡頭安插 C 程式,像是這樣: (針對 Python3)
if __name__ == '__main__':
mylib = C('''
int factorial(int x) {
int ret = 1;
for (; x > 1; x--)
ret *= x;
return ret;
}
''')
factorial = mylib['factorial']
print('15! =', factorial(15))
不過你需要事先準備些「魔法」,完整程式碼可見:
https://gist.github.com/jserv/11d02a2ba126f4056aae5b43ce9fa51f
上述程式的技巧是:
1. 將內嵌於 Python 程式碼的 C 程式透過編譯器 (這裡用 gcc 示範) 產生 shared
library / DLL;
2. 透過 Python 的 ctypes 載入在 (1) 產生的 shared library / DLL 並給定必要
的進入點;
3. 以 atexit 確認做好必要的善後動作;
Ellen Bialystok 教授和 Fergus I. M. Craik 教授合作的論文 "Cognitive and
Linguistic Processing in the Bilingual Mind" [1] 指出,擁有平衡雙語能力
(也就是母語和第二種語言一樣流暢,且在日常中常轉換使用) 的人,可發展出更好
的認知能力。
為何如此呢?其中有個解釋說,無論雙語者在當下使用何種語言思考,在其大腦依然
會下意識的同時處理兩種語言,然後決定使用哪一種語言、屏蔽哪一種語言。這意味
著,雙語者因而運用較單語者更多的「認知」來處理日常思考,這讓他們在無形中多
出大量鍛煉認知能力的機會。
Python 和 C 語言的交互使用,不也是強化認知的訓練嗎?
我是宅色夫,我慣 C,也愛探索程式語言。 <-- 網紅的短片後面好像都要加這樣的話
[1] https://www.psychologicalscience.org/journals/cd/19_1_inpress/Bialystok_final.pdf
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.82.61
※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1557067415.A.BC2.html
→
05/05 22:43,
6年前
, 1F
05/05 22:43, 1F

推
05/05 22:44,
6年前
, 2F
05/05 22:44, 2F
推
05/05 22:44,
6年前
, 3F
05/05 22:44, 3F
推
05/05 22:44,
6年前
, 4F
05/05 22:44, 4F
推
05/05 22:44,
6年前
, 5F
05/05 22:44, 5F
推
05/05 22:44,
6年前
, 6F
05/05 22:44, 6F
推
05/05 22:45,
6年前
, 7F
05/05 22:45, 7F
推
05/05 22:45,
6年前
, 8F
05/05 22:45, 8F
推
05/05 22:45,
6年前
, 9F
05/05 22:45, 9F
噓
05/05 22:45,
6年前
, 10F
05/05 22:45, 10F
推
05/05 22:45,
6年前
, 11F
05/05 22:45, 11F
推
05/05 22:46,
6年前
, 12F
05/05 22:46, 12F
推
05/05 22:46,
6年前
, 13F
05/05 22:46, 13F
推
05/05 22:47,
6年前
, 14F
05/05 22:47, 14F
推
05/05 22:48,
6年前
, 15F
05/05 22:48, 15F
→
05/05 22:48,
6年前
, 16F
05/05 22:48, 16F
→
05/05 22:48,
6年前
, 17F
05/05 22:48, 17F
推
05/05 22:49,
6年前
, 18F
05/05 22:49, 18F
→
05/05 22:49,
6年前
, 19F
05/05 22:49, 19F
→
05/05 22:49,
6年前
, 20F
05/05 22:49, 20F
→
05/05 22:50,
6年前
, 21F
05/05 22:50, 21F
→
05/05 22:51,
6年前
, 22F
05/05 22:51, 22F
推
05/05 22:52,
6年前
, 23F
05/05 22:52, 23F
→
05/05 22:52,
6年前
, 24F
05/05 22:52, 24F
推
05/05 22:52,
6年前
, 25F
05/05 22:52, 25F
推
05/05 22:53,
6年前
, 26F
05/05 22:53, 26F
推
05/05 22:53,
6年前
, 27F
05/05 22:53, 27F
→
05/05 22:54,
6年前
, 28F
05/05 22:54, 28F
推
05/05 22:55,
6年前
, 29F
05/05 22:55, 29F
噓
05/05 22:55,
6年前
, 30F
05/05 22:55, 30F
推
05/05 22:55,
6年前
, 31F
05/05 22:55, 31F
推
05/05 22:55,
6年前
, 32F
05/05 22:55, 32F
→
05/05 22:55,
6年前
, 33F
05/05 22:55, 33F
推
05/05 22:56,
6年前
, 34F
05/05 22:56, 34F
→
05/05 22:56,
6年前
, 35F
05/05 22:56, 35F
→
05/05 22:56,
6年前
, 36F
05/05 22:56, 36F
推
05/05 22:57,
6年前
, 37F
05/05 22:57, 37F
推
05/05 22:57,
6年前
, 38F
05/05 22:57, 38F
→
05/05 22:57,
6年前
, 39F
05/05 22:57, 39F
還有 123 則推文
→
05/06 03:57,
6年前
, 163F
05/06 03:57, 163F
推
05/06 06:38,
6年前
, 164F
05/06 06:38, 164F
推
05/06 06:47,
6年前
, 165F
05/06 06:47, 165F
推
05/06 07:08,
6年前
, 166F
05/06 07:08, 166F
推
05/06 07:19,
6年前
, 167F
05/06 07:19, 167F
推
05/06 07:34,
6年前
, 168F
05/06 07:34, 168F
推
05/06 07:52,
6年前
, 169F
05/06 07:52, 169F
推
05/06 08:04,
6年前
, 170F
05/06 08:04, 170F
推
05/06 08:10,
6年前
, 171F
05/06 08:10, 171F
推
05/06 08:13,
6年前
, 172F
05/06 08:13, 172F
推
05/06 08:20,
6年前
, 173F
05/06 08:20, 173F
推
05/06 08:25,
6年前
, 174F
05/06 08:25, 174F
推
05/06 08:44,
6年前
, 175F
05/06 08:44, 175F
→
05/06 08:44,
6年前
, 176F
05/06 08:44, 176F
推
05/06 08:46,
6年前
, 177F
05/06 08:46, 177F
推
05/06 09:08,
6年前
, 178F
05/06 09:08, 178F
推
05/06 09:09,
6年前
, 179F
05/06 09:09, 179F
→
05/06 09:09,
6年前
, 180F
05/06 09:09, 180F
→
05/06 09:09,
6年前
, 181F
05/06 09:09, 181F
推
05/06 09:17,
6年前
, 182F
05/06 09:17, 182F
推
05/06 09:28,
6年前
, 183F
05/06 09:28, 183F
推
05/06 09:30,
6年前
, 184F
05/06 09:30, 184F
推
05/06 09:51,
6年前
, 185F
05/06 09:51, 185F
推
05/06 09:59,
6年前
, 186F
05/06 09:59, 186F
推
05/06 10:13,
6年前
, 187F
05/06 10:13, 187F
推
05/06 10:24,
6年前
, 188F
05/06 10:24, 188F
推
05/06 10:41,
6年前
, 189F
05/06 10:41, 189F
推
05/06 10:44,
6年前
, 190F
05/06 10:44, 190F
※ 編輯: jserv (140.116.82.61), 05/06/2019 10:50:21
※ 編輯: jserv (140.116.82.61), 05/06/2019 10:51:12
→
05/06 10:51,
6年前
, 191F
05/06 10:51, 191F
→
05/06 10:54,
6年前
, 192F
05/06 10:54, 192F
→
05/06 10:55,
6年前
, 193F
05/06 10:55, 193F
→
05/06 10:57,
6年前
, 194F
05/06 10:57, 194F
→
05/06 10:58,
6年前
, 195F
05/06 10:58, 195F
推
05/06 11:13,
6年前
, 196F
05/06 11:13, 196F
推
05/06 11:41,
6年前
, 197F
05/06 11:41, 197F
推
05/06 12:39,
6年前
, 198F
05/06 12:39, 198F
推
05/06 13:24,
6年前
, 199F
05/06 13:24, 199F
推
05/06 13:45,
6年前
, 200F
05/06 13:45, 200F
推
05/09 22:20,
6年前
, 201F
05/09 22:20, 201F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):