ಠ_ಠ
@anonymous
偷偷說
Sun, Mar 28, 2021 3:07 PM
8
2
python怎麼這麼難!!
我的邏輯怎麼這麼爛!!
ಠ_ಠ
Sun, Mar 28, 2021 3:08 PM
教授出這甚麼題目!!!!
prince6843
Sun, Mar 28, 2021 3:10 PM
需要幫忙嗎
ಠ_ಠ
Sun, Mar 28, 2021 3:12 PM
王子大大是好人!!
ಠ_ಠ
Sun, Mar 28, 2021 3:13 PM
想請教一下這個問題是怎麼回事?
bean10
Sun, Mar 28, 2021 3:14 PM
Sun, Mar 28, 2021 3:15 PM
type(n)就好 不用再寫type(p[n])
bean10
Sun, Mar 28, 2021 3:16 PM
你這樣寫的意思是n是1 1 1 1 1 'e' ' '
前面五行會對是因為p[1]是1
但是第六行n是'e' 所以p[e]會type error
ಠ_ಠ
Sun, Mar 28, 2021 3:18 PM
哦哦 解決了!! 原來如此!!
ಠ_ಠ
Sun, Mar 28, 2021 3:18 PM
我繼續琢磨一下,等等繼續問
bean10
Sun, Mar 28, 2021 3:18 PM
好的 加油!
bean10
Sun, Mar 28, 2021 3:19 PM
題外話 我ID的數字好二進位
ಠ_ಠ
Sun, Mar 28, 2021 3:19 PM
先謝謝bean大大!!!
ಠ_ಠ
Sun, Mar 28, 2021 3:19 PM
10 就是十進位的 2吧
bean10
Sun, Mar 28, 2021 3:19 PM
對啊XDD
plum1253
Sun, Mar 28, 2021 3:27 PM
工程師路過卡個幫解題,新手辛苦了。
bean10
Sun, Mar 28, 2021 3:29 PM
plum1253: 那工程師大大可以幫我解C嗎
plum1253
Sun, Mar 28, 2021 3:34 PM
bean10: 有點久沒寫,不介意的話貼看看。
bean10
Sun, Mar 28, 2021 3:34 PM
沒事 目前還沒有遇到問題
因為我還在逃避問題
plum1253
Sun, Mar 28, 2021 3:35 PM
bean10:
prince6843
Sun, Mar 28, 2021 3:41 PM
ಠ_ಠ: 乾 抱歉我跑去洗澡了XDDD 真D抱歉
至於那個for n in p,你可以想成是 迴圈每一次都依序取一個p裡面的物件(取名叫n)出來做事情,做完就丟掉,一個一個 直到取完為止
我老師以前講解是:p就像一包mm巧克力
for n in p: 吃掉
就等於n是我挖出來的一顆巧克力,挖出來做(迴圈裡)「吃掉」的動作,然後再挖下一個 直到沒有巧克力。
Ps. 只要不要動到p裡面的值,基本上p不會變,不是真的被吃掉 或被刪掉XD
plum1253
Sun, Mar 28, 2021 3:41 PM
順帶一提吼,我當年小大一學程式的時候,上了整整半年C啥屁都不會。後來讀研有具體需求,花兩三個禮拜專心練完整本入門習題,再寫個小專案(遊戲外掛的外掛)就算比較上手了。如果有心要學,還是建議做完基礎題目之後,弄個小專案來炸一下自己,會比較有效率。
prince6843
Sun, Mar 28, 2021 3:41 PM
希望噗主對for有比較清楚的概念
ಠ_ಠ
Sun, Mar 28, 2021 3:43 PM
哇!!! 感謝王子的細心解釋!!!
ಠ_ಠ
Sun, Mar 28, 2021 3:43 PM
也感謝路過的梅子大大!!!
ಠ_ಠ
Sun, Mar 28, 2021 3:44 PM
我覺得教授的題目已經像個小專案了
雖然我沒做過專案不知道長甚麼樣子
ಠ_ಠ
Sun, Mar 28, 2021 3:46 PM
現在是卡在要判斷輸入的字符是否含有數字, 但是輸入的字符可以含有空格,所以不能用isdigit去搞
ಠ_ಠ
Sun, Mar 28, 2021 3:47 PM
噗煮再去想一下......
plum1253
Sun, Mar 28, 2021 3:49 PM
學著找官方API吧
Built-in Types — Python 3.9.2 documentation
prince6843
Sun, Mar 28, 2021 3:53 PM
ಠ_ಠ: 試試.split() 這個function
ಠ_ಠ
Mon, Mar 29, 2021 1:07 AM
後來用isdigit搞定了!
ಠ_ಠ
Mon, Mar 29, 2021 1:09 AM
想請大家提示一下,如果說要找list中某個單字只能用特定字符組成,大概要怎麼做?
ಠ_ಠ
Mon, Mar 29, 2021 1:09 AM
Mon, Mar 29, 2021 1:45 AM
例如
ಠ_ಠ
Mon, Mar 29, 2021 1:10 AM
Mon, Mar 29, 2021 1:45 AM
要從a中找到由string b裡的字母(也就是g,i,d)組成的單字
ಠ_ಠ
Mon, Mar 29, 2021 1:11 AM
我想說把a的單字拆分成字母,一個一個跟b去比較
ಠ_ಠ
Mon, Mar 29, 2021 1:23 AM
Mon, Mar 29, 2021 1:48 AM
ಠ_ಠ
Mon, Mar 29, 2021 1:26 AM
Mon, Mar 29, 2021 1:26 AM
好像思路整個錯了
prince6843
Mon, Mar 29, 2021 3:28 AM
請問是說 b如果是gid
Output 只能是gid dig idg 之類的嗎?
ಠ_ಠ
Mon, Mar 29, 2021 3:31 AM
對對
ಠ_ಠ
Mon, Mar 29, 2021 3:33 AM
ಠ_ಠ
Mon, Mar 29, 2021 3:34 AM
新的沒卵用的進度,
哇少了一個for
prince6843
Mon, Mar 29, 2021 4:07 AM
我的想法是,可以把a裡面的b字母都替換成””(空字串),如果a單字換完變空字串就可以輸出了(代表a單字裡的字母都是b的
ಠ_ಠ
Mon, Mar 29, 2021 4:38 AM
喔喔 謝謝prince!
ಠ_ಠ
Mon, Mar 29, 2021 4:39 AM
我後來又多問幾個人 然後採用了把a單字都換成字母
在建立一個空的list,把不符b的單字都丟進去 再比對
ಠ_ಠ
Mon, Mar 29, 2021 4:40 AM
然後我把式子加進原算式跑過久
ಠ_ಠ
Mon, Mar 29, 2021 4:41 AM
(題目的a是一個1m txt文件)
prince6843
Mon, Mar 29, 2021 5:03 AM
ಠ_ಠ: 為什麼最後還要再比對呀
ಠ_ಠ
Mon, Mar 29, 2021 5:34 AM
因為存進去的是 不是從b字母組成的單字
所以跟a比對之後可以得到 只從b字母組成的單字
ಠ_ಠ
Mon, Mar 29, 2021 5:35 AM
ಠ_ಠ
Mon, Mar 29, 2021 5:35 AM
如果是 in bb就範圍太大了
prince6843
Mon, Mar 29, 2021 5:43 AM
這樣的確滿耗能的 畢竟做了兩次for
prince6843
Mon, Mar 29, 2021 5:50 AM
把幾句程式刪掉了,給你參考看看
prince6843
Mon, Mar 29, 2021 5:59 AM
單講噗主的code的話,噗主的for loop直接寫for word in a ,可以不用再寫a[word],直接aa = list(word)
prince6843
Mon, Mar 29, 2021 6:01 AM
還有另外一種方式是,如圖,加一個flag,之後如果再a單字裡面發現不是b的字母,flag就變false,最後只要看flag如果是維持true就代表都沒有非b的字母,就可以印出來
ಠ_ಠ
Mon, Mar 29, 2021 6:08 AM
Mon, Mar 29, 2021 6:10 AM
prince6843: 哦哦 我看懂王子寫的code了,謝謝你!
不過我這邊題目要求是找一堆單字裡面,由特定字母組成的單字,不是刪除多餘的字母?
prince6843
Mon, Mar 29, 2021 6:10 AM
ಠ_ಠ: 沒關係呀 前面那些都是分辨"是不是特定字母組成的單字"的方法,能夠分辨之後 你要print還是write file都可以
prince6843
Mon, Mar 29, 2021 6:12 AM
2
像我的第一個方法就是,如果是"特定字母組成的單字",結果就會是空字串("")
我只要最後寫個是空字串就print(word) 就好了
第二個的話就是if flag == True,就print出
ಠ_ಠ
Mon, Mar 29, 2021 6:14 AM
哦哦哦!!!!!我思考一下
ಠ_ಠ
Mon, Mar 29, 2021 7:12 AM
我太感動了 謝謝Prince
ಠ_ಠ
Mon, Mar 29, 2021 7:15 AM
2
如此簡潔明瞭的code,王子大大是神嗎
prince6843
Mon, Mar 29, 2021 7:17 AM
不客氣啦您過獎了XD
讀研究所 有時候寫出來的東西都沒有用,所以我倒是很喜歡寫這種課堂的作業
當初大一學python的時候 很幸運遇到一個滿會教的老師,很多簡潔的code的觀念都是他教給我的>< 噗主有什麼問題都可以再問~
prince6843
Mon, Mar 29, 2021 7:19 AM
噗幣我心領ㄌ
ಠ_ಠ
Mon, Mar 29, 2021 7:28 AM
你怎麼把噗必退回了
ಠ_ಠ
Mon, Mar 29, 2021 7:28 AM
早知道就鎖閉孔了
prince6843
Mon, Mar 29, 2021 7:33 AM
ಠ_ಠ: 一題而已小事啦
如果以後還需要幫忙再給你投幣XD
ಠ_ಠ
Mon, Mar 29, 2021 7:34 AM
謝謝王子大大
想問一下,其實不太懂為什麼flag==true就print出了?
ಠ_ಠ
Mon, Mar 29, 2021 7:35 AM
這邊邏輯不太好
ಠ_ಠ
Mon, Mar 29, 2021 7:38 AM
就是非指定與指定單字不是會變換true,false嗎?
prince6843
Mon, Mar 29, 2021 7:48 AM
在檢驗之前inlist_flag = True,在後面的迴圈裡檢查b字母的時候,如果每個字母都是b的話,就不會走到flag=False了,所以如果一直維持T就等於一直都是b的字母
反之,萬一遇到一個不是b的字母,flag就會變False,後面並沒有程式會再把flag便True,所以一旦flag事F,就代表曾經出現過非b的字
ಠ_ಠ
Mon, Mar 29, 2021 8:03 AM
哦哦哦 原來如此! 可是如果後面又出現b的字母,不會把false轉回來嗎?
ಠ_ಠ
Mon, Mar 29, 2021 8:03 AM
Mon, Mar 29, 2021 8:03 AM
因為程式碼寫的是 =!
prince6843
Mon, Mar 29, 2021 8:08 AM
噢噢 因為我後面寫的程式碼是:
if letter not in b:
flag = False
ಠ_ಠ
Mon, Mar 29, 2021 8:18 AM
歐歐!!
plum1253
Mon, Mar 29, 2021 1:06 PM
prince講得很清楚了。那我來教個略進階的list comprehension,這是個
犧牲可讀性
把簡單的小段落更加簡化的寫法,習慣的話會很方便。
prince6843
Mon, Mar 29, 2021 5:02 PM
plum1253:
來睡
(不是
曾經看過這種寫法 真的⋯我段位還不夠XDD感謝梅子的解釋
plum1253
Mon, Mar 29, 2021 5:18 PM
prince6843: 個人理解上,list comprehesion是凸顯重點的倒裝句,把做什麼事(print)拉到前面,限定對哪些元素做事的for跟if放在後面。這確實需要習慣一下,也因為可讀性而有點爭議啦XD
總之,晚安囉
ಠ_ಠ
Mon, Mar 29, 2021 9:24 PM
Mon, Mar 29, 2021 9:25 PM
哇
感謝梅子大大的補充!
有點看不懂,之後再來慢慢啃好了
大家是真的好厲害
ಠ_ಠ
Wed, Mar 31, 2021 11:13 AM
Wed, Mar 31, 2021 11:13 AM
哈哈哈哈 我現在才發現我那天熬夜太多,這噗裡講的話不連貫
載入新的回覆
我的邏輯怎麼這麼爛!!
想請教一下這個問題是怎麼回事?
前面五行會對是因為p[1]是1
但是第六行n是'e' 所以p[e]會type error
題外話 我ID的數字好二進位10 就是十進位的 2吧因為我還在逃避問題至於那個for n in p,你可以想成是 迴圈每一次都依序取一個p裡面的物件(取名叫n)出來做事情,做完就丟掉,一個一個 直到取完為止
我老師以前講解是:p就像一包mm巧克力
for n in p: 吃掉
就等於n是我挖出來的一顆巧克力,挖出來做(迴圈裡)「吃掉」的動作,然後再挖下一個 直到沒有巧克力。
Ps. 只要不要動到p裡面的值,基本上p不會變,不是真的被吃掉 或被刪掉XD
希望噗主對for有比較清楚的概念雖然我沒做過專案不知道長甚麼樣子Built-in Types — Python 3.9.2 documentation
Output 只能是gid dig idg 之類的嗎?
哇少了一個for在建立一個空的list,把不符b的單字都丟進去 再比對
所以跟a比對之後可以得到 只從b字母組成的單字
不過我這邊題目要求是找一堆單字裡面,由特定字母組成的單字,不是刪除多餘的字母?
我只要最後寫個是空字串就print(word) 就好了
第二個的話就是if flag == True,就print出
當初大一學python的時候 很幸運遇到一個滿會教的老師,很多簡潔的code的觀念都是他教給我的>< 噗主有什麼問題都可以再問~
想問一下,其實不太懂為什麼flag==true就print出了?
這邊邏輯不太好反之,萬一遇到一個不是b的字母,flag就會變False,後面並沒有程式會再把flag便True,所以一旦flag事F,就代表曾經出現過非b的字
if letter not in b:
flag = False
曾經看過這種寫法 真的⋯我段位還不夠XDD感謝梅子的解釋
總之,晚安囉
感謝梅子大大的補充!
有點看不懂,之後再來慢慢啃好了
大家是真的好厲害