iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 20
0
AI & Data

看對話學 Python 資料分析,用情境故事帶你入門系列 第 20

Day-20 開檔讀檔,學會讀取檔並進行簡單計算(上)


人們會用熟悉的語言及方式進行溝通,西方國家的民眾使用英文一樣、或是現在熱門的社群軟體!Licensed by Adobe Stock

Meiko 坐在百貨公司的地下街,隨手翻著手裡的英文雜誌,背了幾個單字,又被手機的 Line 訊息給打斷,忙著回覆不同客人打來的訊息。

Meiko:「Jason,你有想過為什麼世界上最通用的語言是英文?」

Jason:「我去過德國、法國、西班牙,或許是我沒有機會接觸這些歐洲語系的語言,可是我總覺得學起來英文需要背誦的內容相對來少。」

Meiko:「恩,容易使用可能是一個原因!」

Jason:「我還想到一個可能,因為近代西方國家最強盛的兩個國家,一個是英國另外一個是美國,既然他們強盛,自然就會延伸許多經濟活動(商機),大家為了生意上的往來,自然會用英文溝通。」

Meiko:「聽起來蠻有道理的,一方面學起來不難,一方面可以可以做生意,不用英文好像跟自己過意不去。」

Jason:「那換我問你,為什麼你會用 Line 跟客人聊天?」

Meiko:「這還用問?因為我們的客人主要都是上班族或是大哥、大姐,他們手機裡最常用的軟體就是 Line 拉,為了拉近跟他們的距離,三不五時給他們噓寒問暖,應該的!」

Jason:「很多人用!還有其他原因嗎?」

Meiko:「而且以前沒有 Line 的時候,想要賣東西又不面對面的話,就要靠電話,可是一次只能服務一個客人,現在客人有問題,我只要有看到訊息,即使不用即時回覆,傳個長輩圖也有辦法維繫客戶。」

Jason:「哈,你也用長輩圖呀?」

Meiko:「當然,要用客戶習慣的方式跟他溝通啊!說到這個,我就好奇,Line 的功能是讓人與人溝通,還有不用即時構通,那像我們現在在寫程式,跟電腦溝通會有什麼樣的方式?」

Jason:「你記得最一開始在學程式的時候,我們學了什麼?」

Meiko:「歐!就是input()函式和print()函式。誒,我好像早就學過跟電腦溝通的方式,哈哈。可是,我總不可能每次都只靠input()print()處理事情吧?這樣每次都要打字,很累耶!」

Jason:「的確,像現在很紅的社群網站或是電商平台,他們網路上的資訊傳輸,很多都是用 JSON 的資料格式。」

Meiko:「哇,Jason 你專有名詞的症狀又出現囉!」

Jason:「 JSON 是 (JavaScript Object Notation) 的縮寫,JavasSript 是一種網頁前端的語言,你現在看到網站的互動,比如說你去電商網站買衣服,點擊『購買』按鈕後,會傳輸購買品項的資訊給電商網站的後台,這些前台的互動都是 JavasSript 這種語言做到的。Object Notation 則是一種 JavaScript 的物件格式。」

Meiko:「Okay,那 JSON 又做了什麼?」

Jason:「你想像一下,你在網站上的互動行為,都會轉成資料,然後用 JSON 這種資料格式傳送到網站公司的伺服器裡面。網站公司伺服器裡面的後端程式就會開始進行運算,可能是處理你的訂單,或是你點擊的網頁連結,再回傳資料給你,然後你就會看到你想看的網頁連結照片、文字,或是告知你的訂單成立,已經準備幫你處理這類的訊息。」

Meiko:「厚,Jason 你霹哩啪拉講了一堆,我還沒想過原來我們在網路上做一個行為,後面需要做到那麼多的事情!」

Jason:「對啊,網路看似簡單,其實背後的運作一點也不簡單呢!」

Meiko:「那這個 JSON 跟我們前面談到的英文有關係嗎?」

Jason:「哈,回過頭來我們來看前面聊到的英文特性,其實跟 JSON 這個資料傳輸的格式有異曲同工資料。因為 JavaScript 是大多數網頁前端的語言,所以就很多人來學習。」

Meiko:「哈,跟英文一樣!」

Jason:「另外,網頁一直有傳輸資料的需求,背後還是人在撰寫這些程式碼,處理資料,所以需要一個容易讓人可以理解的格式,json 這個資料格式因為有階層性,跟人對於事物的理解相近,於是就變成大家常用的方式。」

我大寶寶拉~想知道更多 json 格式的細節,可以來看這篇你不可不知的 JSON 基本介紹

Meiko:「好像有點懂又不太懂,有沒有例子?」

Jason:「你記得先前我們在日式咖哩店嗎?」

Meiko:「歐,當然記得,他們的辛口牛肉咖喱真的好吃,咖哩微辣,牛肉煮得鬆軟,還有他們的炸雞也真的是道地的日式口味。」

Jason:「哈,味道真是一個讓人容易回憶起的美好事物!其實,我是要講你記得先前我們用dictionarylist來記錄我們的菜單?」

Meiko:「這我也記得拉,只是好吃的咖哩是讓我第一個想到的。」

Jason:「Python 常用的dictionary跟 JSON 格式很像,我們就可以透過 Python 的 JSON 套件,轉換成 JSON 格式,又或者我們也可以讀取 JSON 檔案的格式,去做一些資料的處理,像是在日式咖哩店,我們就可以處理訂單!」

Meiko:「歐,所以你意思是,像我們跟服務人員點餐之後,當他們把這些餐點的資訊輸入到他們的平板裡面,那些訂單的資訊,就可以透過 JSON 這樣的格式,傳輸到廚房的電腦裡面?」

Jason:「答對了!英文是人用來交流的語言,而 JSON 就是用在資料的溝通。」

Jason:「還有,你剛提到 Line 不用即時回覆這件事,跟我們在處理檔案很像。透過檔案的交換,我們就不需要一直對電腦輸入、輸出,節省時間!」

Meiko:「那我們趕快開始吧!」

Jason:「別急,因為我們現在用的是雲端的 Python 介面,我跟上次的日咖哩店老闆很麻吉,他知道我是資料分析師之後,就請我幫他們看一下營運的資料看能不能給他們一些建議。」

Meiko:「那下次我們再去吃有沙必斯(特價)嗎?」

Jason:「先看我能不能帶給他們價值囉!這邊我有一個範例的點餐檔案,我們先上傳看看能不能正確的讀取資料!」

我大寶寶拉~在開始之前要請各位先下載個範例檔案orderOutput.json請下載之後,先解壓縮到你記得的資料夾,待會用到這個檔案喔!

Jason:「首先,先點選 Colab 顯示的資料夾圖像。」

Jason:「接著,在 Files 下方,點擊第一個『上傳檔案』的圖像。」

Jason:「打開資料夾後,選擇剛剛你下載並解壓縮好的 outputOrder.json 檔案。」

Json:「按下『打開』將檔案上傳。」

Jason:「檔案上傳好之後,你就會看到有一個 outputOrder.json 的檔案出現在你 Colab 的資料夾裡面囉!」

Meiko:「稍等一下...你一下講太多步驟了拉...」

Jason:「歐,好,那我等你一下...」

牛刀小試

我大寶寶~拉,今天花了比較多時間介紹為什麼要用檔案,以及網路中重要的檔案格式 JSON ,最後介紹如何將檔案從你的電腦,上傳到 Google Colab 的雲端資料夾,步驟稍微多一些,但是有了檔案,我們才能針對檔案做一些操作練習,記得要把今天講過的內容自己操作一次唷!明天我們會針對這個 JSON 檔案,進行資料的操作囉!

給大寶寶留言、分享、鼓勵

歡迎登入留言跟我分享你的想法唷!(登入不麻煩,點一下 FB 登入就可以留言了!)

1.喜歡這樣方式學 Python 的朋友請留言『+1』
2.如果前面的內容忘記了,趕快看一下大寶寶這一系列的看對話學 Python 資料分析,用情境故事帶你入門的列表!就能夠繼續 Happy Coding 囉!


上一篇
Day-19 錯誤與例外處理,寫程式不用怕出錯(下)
下一篇
Day-21 開檔讀檔,學會讀取檔並進行簡單計算(中)
系列文
看對話學 Python 資料分析,用情境故事帶你入門30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言