2015-06-22 48 views
-3

我不明白dest_url = r'goog.csv'程序的一部分。我認爲它是用來將我們從互聯網上獲得的文件保存到計算機上的,但是當沒有保存功能時,計算機如何知道它必須保存文件。就好像我們只有一個dest_url變量併爲其分配一個字符串值。如何將csv文件保存到計算機上的某個文件夾中?

from urllib import request 

goog_url = 'http://real-chart.finance.yahoo.com/table.csv?s=GOOG&d=8&e=2&f=2014&g=d&a=2&b=27&c=2014&ignore=.csv' 


def download_stock_data(csv_url): 
    response = request.urlopen(csv_url) 
    csv = response.read() 
    csv_str = str(csv) 
    lines = csv_str.split("\\n") 
    dest_url = r'goog.csv' 
    fx = open(dest_url, "w") 
    for line in lines: 
     fx.write(line + "\n") 
    fx.close() 

download_stock_data(goog_url) 
+0

你認爲什麼'開(DEST_URL,「W 「)'呢? RT * M - > https://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files –

回答

0

注意,非常下一行打開寫入文件。

fx = open(dest_url, "w") 

"w"表示模式。 接下來的兩行使用這個fx對象來使用寫入文件。

最後fx.close()刷新緩衝區(即寫入剩下的任何文件),然後關閉流並保存文件。

+0

雖然我仍然感到困惑。 「open」函數中的第一個參數不是文件的名稱嗎?計算機如何知道我們是否真的保存了該文件? –

+0

事實上,第一個參數是文件的名稱。 'dest_url'具有文件的名稱,不是嗎? – agamagarwal

+0

問題是,教程中的人說我們將從互聯網上下載的任何東西都保存到名爲goog.csv的文件中。這是一個正確的說法嗎? –

0

起初這讓我非常困惑。腳本運行時,文件名與腳本保存在同一個Python文件夾中,所以Bucky只需將文件名稱傳遞給變量(dest_url)即可。由於文件名駐留在相同的腳本文件夾中,因此計算機會自動識別「Goog.csv」。

0

如果您正在使用的數據幀或任何其他類型的文件工作,大熊貓庫可能是你最好的選擇

進口大熊貓作爲泛

所以在這種情況下,如果我們有一個數據幀...

文件= pan.DataFrame(「數據幀或數據幀的內容的路徑‘) file.to_csv(’example.csv或路徑保存CSV」)

相關問題