Python 商管程式設計心得(二)

J米的學習日記
4 min readJul 3, 2019

--

與先前兩篇Python(上)Python(下)比較起來,課程安排並沒有Python商管程式(一)那麼完善,但也是學到許多,後續會再作介紹。

這次寫心得與上次心境不同在於過去的我,仍躊躇不前,趨於現狀,現在的我,有了一個明確的目標向前邁進,但是一條自己不熟悉且社會價值觀上不被認同的道路,時時刻刻都在檢討自己每一步是否走錯,也用文字去紀錄自己學習的過程。

商管程式(二) 導師:盧信銘 分為 4週

第一週:函數

練習副程式使用,例如:階層計算練習

如果要使用cmd 去作python 互動 則須輸入:

 python -u -i test1.py

如要跳出則使用 exit() 或 Ctrl+Z

除此之外,介紹了 Call by value , Call by address , Call by reference的差別

Call by ref.是C++特有,Python 不同於前述為Call by assignment

因為在Python 有分為 mutable: list , dict, set , classes, user-defined

immutable : string , int , float, bool , range

第二週:字串

印象比較深刻是使用副程式 def & zip & lambda去實作確認身分證字號

首先 zip 可以將 兩個list 或 多個list or tuple 用於 for 或 lambda 很方便

lambda 為 python內用過即丟的函數,隨插即用型的配件

sum= lambda x: x+5

又或者是 搭配map 去使用,map內可放dict or list,要用到才會更了解

alist=[6,7,8,9,10]
blist=[]
for i in map(lambda x: x%5,alist):
blist.append(i)
print(blist) #blist 顯示為 [1, 2, 3, 4, 0]

第三週:資料結構

學到的工具有 Dict , Tuples, Datetime

第三週的作業就開始比較有點小難度跟好玩了!

其中,算塗牆的問題,算是比較好玩且輕鬆的題目。

現在給定如下的資料輸入格式:第一行輸入牆壁n面和m次油漆,接下來的m行每行依順序輸入漆的牆壁的起點號碼、漆的牆壁的終點號碼,以及顏色代碼,都是合理的整數。輸出共有m段,於第 i 段輸出在全部油漆動作都完成後,第 i 次油漆之顏色的牆壁面數、一個空格,與該顏色代碼。段與段之間用一個分號隔開。所有牆壁在最初都是顏色 1。

呈現結果大概像下面這樣,也是挺好玩的! 計算最後牆上的漆料號碼

第四週:用 Python 分析財金資料

最痛苦的時刻來臨,前面太簡單,後面有點跳到太難,差點讓我想放棄,但還是沉住氣,一步一步上網google及Stack Overflow去尋找答案。

以下是我學會的技巧:

  1. 檔案讀寫 (包含 txt , csv)
  2. 如何安裝pip, pip3
  3. 如何使用matplotlib (但資料視覺化這部分仍然是我要惡補的部分)
  4. Dict 與 list , def 副程式 使用

程式碼就不貼上來了! 直接顯示結果,簡單說,就是拿大盤ROI與個股ROI作回歸分析,xlist內裝所有大盤ROI , ylist內裝個股的ROI,X軸為β,Y軸為α,因此y=α x+ε,β > 0:意味大盤上漲,個股持正向變動;反之,β < 0:意味大盤上漲,個股反而呈反向變動,下跌趨勢,下圖2016年大盤上漲,大立光與可成上漲力道之大。

α 所代表意義為扣除大盤波動下,個股所呈現上漲或下跌,從公式也可窺知一二。

下面主要是想提醒自己 Dict 字典也可使用append,並可以同一key 裝載多個value,下面就是同一支股票裝入一整年度的ROI值,如果未來自己忘記要再回來看一遍!!!!

為什麼要加 [] 是因為讓它成為 list ,後續才能使用append !!!

這樣 Dict就可以使用append

if (COID not in COIDarr):
COIDarr.append(COID)
stock_each[COID] = [arow[‘ROI’]] #之前卡到,忘記外面加[]
stock_each_num[COID] = 1
else:
stock_each[COID].append(arow[‘ROI’]) #Dict是可以使用append不要懷疑
stock_each_num[COID] += 1

2019.06.04~2019.0703

keep going

Learning by “doing” , not just saying.

--

--

J米的學習日記
J米的學習日記

Written by J米的學習日記

工業工程畢業,但選擇不同的道路,踏上軟體之路。個人網站:https://jamie-life-coding.site , linkedin: https://www.linkedin.com/in/huangjamie/ , email: b10130402@gmail.com

Responses (1)