PTT推薦

[討論] 遇到問題就workaround真的好嗎?

看板Soft_Job標題[討論] 遇到問題就workaround真的好嗎?作者
applebg
(Malicious Racist)
時間推噓 X 推:18 噓:27 →:42

我玩程式語言有時候會遇到一些程式語言本身定義就跟
我自己想做的運算互相衝突的時候。Python的string被
定義為immutable, 可是可以使用index的方式去存取
字元。

比方說:
s = "aabbcc"
print(s[0])

執行結果會給我輸出: a


大家在解決問題的時候,常常想的事情好像是繞過這種
問題。就我看來,能以index 的方式存取字元,我就會
誤以為可以直接對字串s 進行修改,像是
s[0] = "b"
這個敘述就不會過。

但知道python的字串是immutable之後,其實我只需要用
s存取資料,再宣告一個s1變數,把s存取的資料進行重新
組合就可以了。

常常都要做這種workaround,而不是能以我最直覺的方
式操作。

然後不同的程式語言,還會有不一樣的定義。我覺得好累


--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.42.235 (臺灣)
PTT 網址
※ 編輯: applebg (36.226.42.235 臺灣), 12/02/2021 19:15:54

jlhc12/02 19:15你在說中文嗎...

Raymond071012/02 19:15這也叫workaround???不就是語言特性

如果有程式語言把字串定義為mutable,那就又不一樣了。每個程式語言都有自 己的定義,永遠追不完。

※ 編輯: applebg (36.226.42.235 臺灣), 12/02/2021 19:18:21

gasbomb12/02 19:17有意見自己去發明語言

※ 編輯: applebg (36.226.42.235 臺灣), 12/02/2021 19:19:43

tbpfs12/02 19:21這是超新手程度的問題,你來錯版了

我在想高手們是不是workaround之後,還能把他們workaround的方式寫成一個 方便使用的function,以後大家遇到一樣的問題就直接拿他們的function用。 對我是新手。

※ 編輯: applebg (36.226.42.235 臺灣), 12/02/2021 19:27:48

alihue12/02 19:26java: str.charAt(i)

alihue12/02 19:29python 為了易用確實犧牲了一些嚴謹的設計。如果無法接受

alihue12/02 19:29就回去寫靜態語言,可以靠 IDE 的靜態分析省很多地雷

Sunal12/02 19:53要不要來寫rust,沒定義好都不給你操作

wulouise12/02 19:53我還以為你要自己發PR解bug

l172410812/02 19:54不能用i++,只能用i += 1 wORkaRouND 我覺得好累

js0715071512/02 20:05去寫C就沒這種問題

hduek15312/02 20:08一台不能飛的車然後你抱怨怎麼不能飛?

hero3203612/02 20:10這也可以唸..轉行好了

nh60211as12/02 20:11???

jhjhs3350412/02 20:15某些人開發的APP會閃退就是這樣搞

WaterLengend12/02 20:33你也想了個workaround不會被刪文但是也沒解決什麼

WaterLengend12/02 20:33問題。

viper970912/02 20:34可以考慮包成函式~雖然這樣就違背原語言的特性了...

DrTech12/02 20:47哈哈,還好你沒寫過 perl,你會瘋掉

abccbaandy12/02 20:49你錯了,高手遇到這問題就會再發明一種新語言,不然

abccbaandy12/02 20:49你以為為什麼會有這麼多語言?

horsekit12/02 21:02python的字串是mutable 這不是workaround 用改陣列的方

horsekit12/02 21:02式改字串習慣很不好

leo02156612/02 21:17

CMJ012112/02 21:44python的字串是mutable <-- 這是對的嗎?

Isaea12/02 21:48寫php啊簡單粗暴

somefatguy12/02 21:57你的問題是怎麼會覺得好累,不要一直坐著要多運動

superpandal12/02 21:59很多都不直覺沒錯 java就是 一堆以設定當語法的...

superpandal12/02 22:00語法即是設定 不然要ide做什麼 根本不好除錯

superpandal12/02 22:01java底層還ok 一堆框架步步是坑 浪費時間工具鏈

Petyr12/02 22:02你確定你知道什麼叫做workaround?

DarkIllusion12/02 22:06看來你把python字串immutable的設計視為一個問題 窩

DarkIllusion12/02 22:06覺得不是這樣的

DarkIllusion12/02 22:06https://reurl.cc/Q6KmOq

easyman12/02 22:07每種語言有不同設計哲學,覺得無法了解,就換一種吧。

superpandal12/02 22:14有時候真的覺得很感慨 學習學一堆沒實質意義又很累的

superpandal12/02 22:14做什麼呢?

saladim12/02 22:33此篇前提不對吧

ssccg12/02 22:45為什麼能以index存取就要能修改? get和set分開不是很常見?

ssccg12/02 22:49你所謂的workaround還是沒有修改到原物件,這只是正常操作

ssccg12/02 22:56然後說到直覺,很多人所謂的直覺,其實只是自己最先學的語

ssccg12/02 23:00言的特性,自己用有誤會的成見寫錯了再說不直覺

Raymond071012/03 00:08#1XfUPdaE (graduate)考不上研究所比這件事感慨多了

KanzakiHAria12/03 00:42

godsparticle12/03 08:53怎又語言大戰

shooter55512/03 09:38說出一句話後 不管再怎麼想改變句子的內容 就是第二句

shooter55512/03 09:38話了 所以用新的字串來保存你想改變的新的字串 也沒什

shooter55512/03 09:38麼不對

Qoofate12/03 09:39這文也太廢了 你還是去7-11好了

shooter55512/03 09:40原本的直接用陣列越過保護 才真的是workaround

godbye4512/03 11:09等你發明一套新語言

tbpfs12/03 12:30原來是中文系...http://shorturl.at/lFKPV

tbpfs12/03 12:30不過你的中文呢.....

OrzOGC12/03 12:35還好我門外漢 不認為這是問題

vi00024612/03 13:02我都直接右鍵 格式化硬碟

newking76112/03 13:02可悲

me35650012/03 13:34吐了= =

aalexx12/03 14:29為什麼推數是正的

www1701012/03 15:41原來是上次在研所版被噓爆的朋友,看來你還是轉換跑道好

www1701012/03 15:41

sniper282412/03 17:09大家都有得噓 真好

WayneHong12/03 17:41看他以前的發文真的搞不懂是不是在反串0.0

BearFather12/03 17:57講中文

rockman03712/03 18:52以py的特性, 難保有人想在裡面塞多個char,這討論不

rockman03712/03 18:52

andy83102012/03 19:06浪費五分鐘想這到底是不是反串釣魚

zipigi12/03 19:46笑死 到底在供蝦毀

tvbic12/03 20:25你第一天寫程式是不是

pttano12/03 20:42你的workaround 想法真特別,你是半桶雞還是新人?

superpandal12/03 20:59char array確實貼合C 沒有不好

jhjhs3350412/03 22:38只能說規模不同做法有差

KyGrA12/04 04:24我覺得去上班的路程都比這些累 參考一下

daddy2912/04 18:39...............你不太適合後端

remmurds12/05 13:23聖光術

lonelytea12/06 03:05XD

m293812/06 13:10這種程度拜託不要再寫code了

sarsman12/06 15:30Immutable的中文是不可變的,跟用index讀取不衝突啊

brad8462212/06 18:04阿鬼你砍掉重練吧

gn0164288412/06 18:12字串為什麼是immune的是有它的原因

gn0164288412/06 18:13可以參考“程式設計師的自我修養”一書

superpandal12/06 21:26看來這篇推文是針對樓主的 不過只能說哪有什麼修養

superpandal12/06 21:26有名的專案還不是爛的跟什麼一樣

ku39999912/07 08:12你不適合寫程式,轉行吧

ku39999912/07 08:13搞不清楚還不懂問人,說別人workaround

shooter55512/07 09:24被噓到這樣跟風的應該不少 這種保護的確會造成效率下

shooter55512/07 09:24降就是了

IhateOGC12/10 03:52先運動吧,整天坐著陷入迷思了