iT邦幫忙

0

工程師菜鳥_宇弟的 學習筆記 [Python] 08 - [Python] [regular expression] 的應用, 甚麼是 Json

jton 2022-11-07 17:28:361079 瀏覽
  • 分享至 

  • xImage
  •  

[Python] 之旅第8天

實用練習

  • 練習1- [regular expression] 在很長的字串中找特定資料,分別出日期的資訊, 或數量的資訊
  • 公式: regular expression start with, end with
  • [Json] 資料是甚麼
  • 練習2- [Json] [Python] 資料格式互換

練習1-[regular expression] 在很長的字串中找特定資料,分別出日期的資訊, 或數量的資訊
我們很常需要爬文,比如從上百篇文章或新聞中找特定的資訊,可能是空難名單名子或日期等等,這個技巧就能幫上忙

(ps. 日期的input: 01/01 or 01-01 , 101 要能知道是date 一月23)

  • 以下的代碼能根據給的全文字文本,能"找和區分特定資料"
    假設是工廠常用的物料單,格式是日期前,數量後,來讓程式抓這兩個重要資訊
# [python] [Extract] [re.findall] 能找文本裡的日期
# in AA-AA-AAAA | AA.AA.AAAA | AA/AA/AAAA格式
# 數量 (ps. 數量 is always after ",")
 
import re
 
#"原始字串: 2022-11-15, 100; 2022-12-16,300; 2022-12-31, 400;最後到貨日2023-01-23,500經過regex進行提取處理,要能輸出二個矩陣"
 
text = "原始字串: 2022-11-15, 5; 2022.12.16,3888; 2022/12/31, 400;最後到貨日2023-01-23,500經過regex進行提取處理,要能輸出二個矩陣"
 
print ( "日期", ( re.findall (r'\d+[/.-]\d+[/.-]\d{2,4}',text)))
 
print ( "數量", ( re.findall (r',\.?([ \d.]+)',text)))
 
#(r'\d+[/.-]\d+[/.-]\d{2,4}',text)

成果會長這樣喔:
輸入為: "原始字串: 2022-11-15, 5; 2022.12.16,3888; 2022/12/31, 400;最後到貨日2023-01-23,500經過regex進行提取處理,要能輸出二個矩陣" (當然後續下載了整本小說,有一樣的資料格式一樣能給抓出來)
https://ithelp.ithome.com.tw/upload/images/20221027/20153034zi9DeByZrJ.png


  • 公式: regular expression start with, end with
    https://ithelp.ithome.com.tw/upload/images/20221027/20153034pzLAAqVKxz.png

[Json] 資料是甚麼

引用之前學習的資料:
https://rookiesavior.net/2020/12/30/program-what-is-json/

JSON(JavaScript Object Notation)是一個資料交換的格式與其它語言無關,在JSON未普遍之前,工程師們如果要交換資料,通常會寫在Excel裡-轉成(XML),或是把資料寫在文字檔裡(TXT)等等其他交換資料方式,處理的都是一個個的檔案,開檔、讀檔、更檔、寫檔,總是沒有那麼方便,所以這也是JSON檔,一下出來就變主流的主要原因。

簡單說就是統一排序資料的格式,這種保存資料的格式可以應對很多不同的資料

因為大部分資料庫存資料的方式都是用JSON 格式, 所以知道怎麼轉換他們很有幫助喔


練習2- [Json] [Python] 資料格式互換

  • 小技巧: json.loads 跟 json.dumps

https://ithelp.ithome.com.tw/upload/images/20221107/20153034NyHavkCGCM.png

import json
data = "{'name' : 'joyjjcool'}"
json.loads(json.dumps(data))
 
print (data)

成果會長這樣喔:
https://ithelp.ithome.com.tw/upload/images/20221107/201530345J0MvGTA8p.png

成果會長這樣喔:
https://ithelp.ithome.com.tw/upload/images/20221107/201530344sr5j1tQTw.png

藉由json.loads 跟 json.dumps 可以做到資料格式的互換,因為大部分資料庫存資料的方式都是用JSON 格式, 所以知道怎麼轉換他們很有幫助喔


其他貼文~~
(變強,就從小小的累積開始)

[Python] 之旅第1天 - python環境
https://ithelp.ithome.com.tw/articles/10296280

[Python] 之旅第2天-用 [Python] 跟 [Flask] 為基礎,把 URL input 抓出來
https://ithelp.ithome.com.tw/articles/10296290

[Python] 之旅第3天- 用 [Python] 跟 [Flask]
https://ithelp.ithome.com.tw/articles/10296965

[Python] 之旅第4天- [Python] [Flask] 的應用
https://ithelp.ithome.com.tw/articles/10303948

[Python] 之旅第5天- [Python] [Flask] 的應用, 日期計算 及日期報錯篇
https://ithelp.ithome.com.tw/articles/10309202

[Python] 之旅第6天- [Python] [Flask] 的應用, 比較有小數點圓的面積大小,簡易請假系統製作
https://ithelp.ithome.com.tw/articles/10309352

[Python] 之旅第7天- [Python] [regular expression] 的應用,找特定資料,或限制輸入的格式
https://ithelp.ithome.com.tw/articles/10309371

[Python] 之旅第8天 - [Python] [regular expression] 的應用, 甚麼是 Json
https://ithelp.ithome.com.tw/articles/10309422

[Python] 之旅第9天 - [Python] [Json] 進階說明
https://ithelp.ithome.com.tw/articles/10309620


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言