Shopping Cart

購物車內沒有任何商品。

List 資料型態的常見基本操作-Python 從零開始(三)

立即訂閱電子報,掌握最新資訊!

    稱呼

    電子郵件

    以下非必填,但若您願意分享,我們將能推送更精準的內容給您

    投資經驗

    是否為理工科背景、工程師或有寫程式的經驗?

    有興趣的主題
    量化交易台股期貨海外期貨虛擬貨幣美股

    有興趣的量化交易軟體/平台
    不清楚MultiChartsTradingViewPythonXQ

    想透過量化交易達成甚麼目的?
    不確定自動交易選股回測投資績效量化自己的投資方法想找現成的策略套用

    還有什麼想詢問的?

    20241111 1920 400
    20241111 978 258


    一、Python 資料處理-list 串列資料

    Python 的資料型態(型別)可以分為文字、數字、布林值和容器,容器常見的有 List、 Dictionary。

    list 串列在 Python 使用上,是很常被使用到的資料型態,它就跟名稱(list)一樣,像是一個清單容器,可以儲放文字、數字、甚至是串列型態。Python撰寫程式的時候,只要邏輯和程式碼是正確的,就會衍生出各式的使用方式。

    1. list 串列的使用方式

    list 使用的方式是用中括號 [ ] 將資料裝起來,資料可以是數值、文字,也可以是放入另外的 list。

    變數名稱 = [ 資料型態, 資料型態, [資料型態,資料型態] ]

    a = [123,4.56,'台積電','2330',666] 
    print(a.index('2330'))

    結果:

    <class 'list'>

    2. list 串列的資料位置概念

    串列在使用上是用位置順序來辨別資料,所以使用串列的時候,我們需要了解資料的位置。在許多程式語法中,第一個位置一定是從 0 開始計數。

    串列
    a =[

    123 ,

    4.56 ,

    “台積電” ,

    “2330” ,

    666 ]

    資料位置

    0

    1

    2

    3

    4

    Py 101209161710
    Py 101209161711

    二、Pytho 常見的基本串列 list 使用方式

    1. 取得 n 個位置的資料是什麼
    a = [123,4.56,'台積電','2330',666] 
    print(a[0]) 
    print(a[3])

    結果:

    123
    2330
    1. 取得串列資料:輸出位置從0和位置3之前的內容
    a = [123,4.56,'台積電','2330',666]    
    print(a[0:3])

    結果:

    [123, 4.56, '台積電']
    1. 刪除指定資料:刪除位置0,和位置3之前內容,也就是位置1、2
    a = [123,4.56,'台積電','2330',666] 
    del a[0:3] 
    print(a)

    結果:

    ['2330',666]
    1. 取得資料在串列是第幾個位置
    a = [123,4.56,'台積電','2330',666] 
    print(a.index('2330'))

    結果:

    3
    1. 查詢串列中的資料數量
    a = [123,4.56,'台積電','2330',666] 
    
    print(len(a))   #查詢a的資料有幾個
    print(len([123,4.56,'台積電']))  #查詢[ ]內的資料共有幾個

    結果:

    5
    3
    1. 查詢串列中最小/最大數值
    a = [123,4.56,666]    #僅限定數值資料 
    print(min(a)) 
    print(max(a))

    結果:

    4.56 
    666
    1. 計算資料在串列中出現的次數
    a = [123,4.56,'台積電','2330',666] 
    print(a.count(666))

    結果:

    1

    三、Pytho 進階串列 list 使用方式

    1. 新增資料:將「單個」資料新增到串列後方
    a = [123, 4.56, '台積電', '2330', 666] 
    a.append('python') 
    print(a)

    結果:

    [123, 4.56, '台積電', '2330', 666, 'python']
    1. 新增資料:將「多個」資料新增到串列後方
    a = [123, 4.56, '台積電', '2330', 666] 
    a.extend(['python', 'abc'])  
    print(a)

    結果:

    [123, 4.56, '台積電', '2330', 666, 'python', 'abc']
    1. 新增資料:將資料新增指定的位置
    a = [123, 4.56, '台積電', '2330', 666]
    a.insert(2,'python')    #將資料(python)新增到2的位置
    print(a)

    結果:

    [123, 4.56, 'python', '台積電', '2330', 666]
    1. 刪除資料:列出刪除的資料是什麼
    a = [123, 4.56, '台積電', '2330', 666] 
    print(a.pop())   # pop內沒填數值,就是刪除最後一個 
    print(a.pop(3))  #有數值就是刪除對應的位置   
    print(a)

    結果:

    666    #回傳被刪除的資料 
    2330   #回傳被刪除的資料 
    [123, 4.56, '台積電']  #被pop刪掉的資料,之後就不會再出現
    1. 資料順序反轉
    a = [123, 4.56, '台積電', '2330', 666]
    a.reverse()
    print(a)

    結果:

    [666, '2330', '台積電', 4.56, 123]
    1. 數值資料從小到大自動排列
    a = [123, 4.56, 666]   #僅限定數值資料 
    a.sort() 
    print(a)

    結果:

    [4.56, 123, 666]

    以上就是常見的基本與進階的 list,雖然一開始可能不會那麼好懂何時會用到, 但我更覺得是當需要用的時候,再來找就好,不需要特別記下所有的操作模式,那很痛苦的哈哈,那今天的介紹大概就到這邊,如果有更多的想法,隨時再跟我說囉!

    本系列會從 Python 基本的語法開始介紹,讓沒有程式背景的新手,也能開始用 Python 程式交易。如果你是進階的交易者,可以點擊連結觀看量化通其他 Python 進階文章,認識 爬蟲實用套件資產配置 等內容。

    建議可以照順序閱讀,從零開始學習 Python:


    加入LINE社群量化交易討論群」無壓力討論與分享!

    加入Discord 「量化交易討論群」即時獲取實用的資源!

    Write Together 101306261122
    Write Together 101306261121
    RoWay
    RoWay

    多年投資經驗的兩岸三地操盤手,曾任海外資產管理公司交易平台的產品經理、與各外商投資公司合作開發各式交易策略與系統。

    擅長用Python執行資料蒐集、整理、分析與交易;也善於用Multicharts、MetaTrader等系統建構並回測期貨、期權、區塊鏈策略進而完成投資組合管理。

    文章: 28

    發佈留言

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *