2015-06-22 147 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”)

相关问题