[問卦] 有人也覺得Python比C難寫嗎?

作者: flinch (縮)   2023-07-08 21:15:38
本滷一直是做軟韌體的(裝置之軟體 或韌體) 當然主要是用C/C++
現在用Python覺得很不直覺 難寫
0. 弱資料型態
 串口/網路收資料 一個個卦(byte)收
 收來後 分配組合成int 還float 在C用memcpy就好
看是整個struct一起上 還是一個個成員複製都可
 在python偏偏要用struct.unpack(當然不只這招 但這是我找到最簡化的做法)
 然後C會自動填充空卦(當然可關掉) python全部你家的事
1. 弱資料型態 但偶有強型態之引數
若全都是弱資料形態就算了
有些原生包 限定 list就list 不是bytes
這時就要強轉一下 這要等跑一下才知需要轉 很煩
2. 沒有 do while 或 goto 
do..while棒棒啊 宏神器
更可取代 goto :
do
{
if(TRUE == 吃屎乎())
break;
if(TRUE == 敗亡否())
break;
通過乎 = TRUE;
}while(0);
if(TRUE == 通過)
return 0;
失敗之處理();
return -1;
在python只能用 while 1 來取代
3. 無前處理
都要依賴編輯器來注消/啟用代碼
無法弄成以下模式 以方便比較及優化
#if(1)
簡化之解法
#else
原解法但繁複
#endif
那python是好用在哪?
是切資料串方便嗎 像以下
sub_len = 8
b_list = a_list[:8]
a_list = a_list[8:]
(C直接指針吊包就好 b_ptr = a_ptr; a_ptr = a_ptr + sub_len)
不用設環境可直接上工? 是啦 不過還不是要手動安裝一堆包
那與設環境有什麼區別?

Links booklink

Contact Us: admin [ a t ] ucptt.com