[問題] 字串取值有更好的解法嗎

看板Python作者 (buddy)時間5年前 (2019/12/01 23:02), 編輯推噓2(207)
留言9則, 4人參與, 5年前最新討論串1/1
搭好~如附圖所示,我想要從一個‘’字串‘’抓出score的值,也就是80,雖然這樣寫 可行,但是想知道有更好看或更有效率的方法嗎? 我是有查了一下字串處理的資料,好像正規表示法re的效能上沒有比較好..? https://i.imgur.com/1hSEwpB.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.171.168.174 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1575212524.A.8A8.html

12/01 23:31, 5年前 , 1F
固定這樣格式的話 find("score") find('},')後 str[:]切
12/01 23:31, 1F

12/01 23:31, 5年前 , 2F
切片
12/01 23:31, 2F

12/01 23:45, 5年前 , 3F
slice1 = s.find(":", s.find('score')) + 2
12/01 23:45, 3F

12/01 23:45, 5年前 , 4F
slice2 = s.find("}", s.find('score')) - 1
12/01 23:45, 4F

12/01 23:46, 5年前 , 5F
result = s[slice1:slice2]
12/01 23:46, 5F

12/02 00:34, 5年前 , 6F

12/02 00:52, 5年前 , 7F
哇靠!感謝兩位大神
12/02 00:52, 7F

12/03 19:31, 5年前 , 8F

12/03 19:39, 5年前 , 9F
另外這一看就是變形的JSON,整個去做json.loads比較好處理
12/03 19:39, 9F
文章代碼(AID): #1TuzNiYe (Python)
文章代碼(AID): #1TuzNiYe (Python)