看板 Marginalman
# Write a function called "position" that returns a tuple of the first uppercase letter and its index location. If not found, returns -1. 剛剛在寫這個很簡單的 def position(string): for num, s in enumerate(string): # enumerate (iterable, start=0) if s == s.upper(): print((s, num)) return (s, num) print(-1) return -1 enumerate很好寫沒有問題 但我剛剛想說用index寫寫看 def position(string): for index in range(0, len(string)): if string[index] == string[index].upper(): print((string[index], index)) print(-1) return -1 position("abcd") # returns -1 position("AbcD") # returns ('A', 0) position("abCD") # returns ('C', 2) 理論上上下兩者return都會這樣 但後者卻長這樣 ('A', 0) ('D', 3) -1 ('C', 2) ('D', 3) -1 def position(string): for index in range(0, len(string)): if string[index] == string[index].upper(): print((string[index], index)) return (string[index], index) print(-1) return -1 我補上return這行才正確 -1 ('A', 0) ('C', 2) 有沒有人可以跟土法煉鋼學習的我解釋一下這個return扮演甚麼角色 我只是很直覺得加上去,就寫對了== 不懂why -- 色情兔兔真讚 https://imgur.com/8YI1yju.jpg 89011978/Choney
https://imgur.com/1v81UqN.jpg 3646291/Armadillo
https://imgur.com/miLxbrs.jpg 90838107/HEIJUN・玉田平準
https://imgur.com/jKug6M4.jpg 88459182/Yuyu
https://imgur.com/NEsfFYI.jpg 80081010/Moisture 南丁我婆
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 103.131.12.26 (澳大利亞) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1722397818.A.1BA.html
bach8517: 沒加會印所有大寫 07/31 11:55
erimow: 對啊 我只是想問return是讓他跑到第一個就回報結果的意思 07/31 11:56
Rushia: 你是用直譯器寫的話他螢幕上顯示的不一定是print 07/31 11:57
erimow: 我用visual studio寫 07/31 11:58
Rushia: 你函數都是返回-1當然都顯示-1 07/31 12:00
Chricey: 吃過關節保健品,都沒什麼效果,有推薦的牌子嗎? 07/31 12:00
Rushia: 其實我看了好幾分鐘都看不太懂你要問什麼 07/31 12:02
erimow: 就為什麼我多打return那行 他就會是我預期的答案 07/31 12:03
erimow: 沒有多跑出來的東西 07/31 12:03
Rushia: 總之你return之後後面的程式都不會執行了 07/31 12:03
Kroner: 想問一下有沒有關節痛的運動禁忌?怕動得更嚴重… 07/31 12:03
sustainer123: 因為return 就是不會再往下走 07/31 12:03