close
一、前言
python迴圈練習,迴圈、df迴圈、list迴圈、dict迴圈、多元素迴圈、雙迴圈,
我們都知道同樣的東西要做一百遍真的很煩,這時候不如做一個迴圈。
迴圈基本練習及操作,正式打開資料量化之路!(程式碼在第三段)
二、for迴圈語法概念
for 自訂變數 in 你要的範圍:
撰寫邏輯及程式
舉例而言,i就會print出0到9(不是10唷要記住是10-1),
# 一般迴圈
for i in range(0, 10): # i由0跑到9
print(i)
三、迴圈練習
完整程式碼
import pandas, numpy
import pandas_datareader as web
# 一般迴圈
for i in range(0, 10): # i由0跑到9
print(i)
# list迴圈
list1 = ['nash', 'mark', 'jacky', 'draven']
for i in list1: # 把list1裡的元素跑過一遍
print(i + '好帥')
# df迴圈
df = web.DataReader('2330.TW', 'yahoo') # 下載股市資料
for t in df.index: # 把df裡面index都跑一遍
close = df['Close'][t] # 把收盤價第t個抽出
print(close)
# 使用迴圈把資料放入dict
tickers = ['2330.TW', '2317.TW', '2454.TW'] # 想抓的股票
stock_dict = {} # 產生空字典
for ticker in tickers:
df = web.DataReader(ticker, 'yahoo') # 下載股市資料
stock_dict[ticker] = df # 把下載的股市資料放入字典
# dict迴圈
for k in stock_dict: # 對dict的key值跑一次
df = stock_dict[k] # 在dict裡面抽出key值k的資料丟到df
print(df)
# 同一迴圈多變數
for i, j in zip(range(0, 3), tickers): # i跑range的 j跑tickers的 用zip包起來
print(i, j)
# 雙迴圈
for i in range(0, 10): # 每層迴圈都要跑j的0-4 共10*5=50次
for j in range(0, 5):
print(i, j)
(1) 一般迴圈:用range來選定迴圈要遊歷的範圍,舉例如果是range(0,10)是從0到9
(2) list迴圈:會在指定的list把每個元素都遊歷一遍
(3) df迴圈:遊歷df可以對df.index跑迴圈,而後使用df['欄名'][迴圈變數]來對指定df欄位迴圈
(4) dict迴圈:for k in dict裡面,會對dict裡面的key值遊歷,而後用dict[k]來對整個字典遊歷
(5) 多變數迴圈:用zip把要遊歷的變數括弧起來,然後給相對應數量的迴圈自訂變數
(6) 多層迴圈:每跑完一層i會先跑完j全部,所以共會有i*j個輸出
四、後記
之後會把各種迴圈進階技巧分別來說明,主要會講解資料量化的迴圈使用方式~
有興趣的老鐵們幫我三連666~
文章標籤
全站熱搜