2010-07-26 297 views
0

我剛安裝的Python蟒蛇初學者問題

我試圖運行此腳本:

import csv 
reader = csv.reader(open("some.csv", "rb")) 
for row in reader: 
    print row 

我在Windows上運行。

  1. 是否必須將每行分別輸入到python shell中,或者可以將此代碼保存到文本文件中,然後從shell中運行它?
  2. some.csv必須在哪裏運行?在同一個c:\ python26文件夾中?
  3. 這段代碼應該做什麼?
+2

你正在使用什麼教程?請發佈您正在學習的教程鏈接或標題。 – 2010-07-26 23:23:27

+2

Duplicates:http://stackoverflow.com/questions/1614898/running-python-from-the-windows-command-line,http://stackoverflow.com/questions/1522564/how-do-i-run-a -python-program – 2010-07-26 23:38:32

回答

1
  1. 可以一舉兩得!要從文本文件(如'csvread.py',但擴展名無關緊要)運行代碼,請在命令提示符處鍵入:python csvread.py。確保你的PATH被設置爲包含Python安裝目錄。

  2. 「some.csv」需要在當前目錄中。

  3. 此代碼打開專門設計用於讀取CSV的Python文件描述符。讀取器文件描述符按順序打印出CSV的每一行。查看文檔以獲取更詳細的示例:http://docs.python.org/library/csv.html

+0

非常感謝,但是我如何運行一個腳本與shell中的不同文件夾? – 2010-07-26 23:12:15

1
  1. 將代碼鍵入* .py文件,然後執行它。
  2. 我認爲該文件應該與* .py腳本位於同一個文件夾中。
  3. 這將打開以逗號分隔值格式存儲的文件並打印每行的內容。
+0

其中是py腳本? – 2010-07-26 22:56:47

3
  1. 是的,你可以創建一個文件。交互式外殼僅用於學習語法等,並且帶有想法。這不是寫程序。

    a。請注意,該腳本必須具有.py擴展名,例如csvprint.py。要運行它,請輸入python csvprint.py。這將嘗試從當前目錄加載csvprint.py並運行它。

  2. some.csv文件必須位於當前工作目錄中,而不必在Python文件夾中(事實上幾乎從不應該是)。通常這將是您的主目錄,或者您設置的某種工作區域,例如C:\ work。不過,這完全取決於你。

  3. 不知道csv模塊,以及我自己,我猜它從文件中讀取CSV分隔值作爲元組,並在控制檯上打印每一個。

最後一個注意事項:編寫這種邏輯的常用方法是從命令行獲取輸入,而不是對其進行硬編碼。像這樣:

import csv 
reader = csv.reader(open(sys.argv[1], "rb")) 
for row in reader: 
    print row 

而像這樣運行:

python csvprint.py some.csv 

在這種情況下,你可以隨時隨地把some.csv:

python csvprint.py C:\stuff\csvfiles\some.csv 
+0

回覆:1a:Python本身並不關心文件擴展名是什麼,儘管我不確定Windows是否可以。 – 2010-07-26 23:05:23

+0

「rb」代表什麼? – 2010-07-26 23:13:01

+0

順便說一句我得到系統沒有定義 – 2010-07-26 23:13:18

2

當您打開IDLE時,單擊文件>新建窗口。 (或按Ctrl + N)

這爲您打開一個新窗口,基本上只是一個帶有Python語法高亮的文本編輯器。這是您可以編寫程序並保存的地方。要快速執行它,請按F5。

+0

非常感謝你,但是我如何運行在shell中不同文件夾中的腳本? – 2010-07-26 23:12:00

+1

要在IDLE中打開並運行腳本,可以轉到它所在的文件夾並右鍵單擊>「使用IDLE編輯」。這將在文本編輯器中打開它,就好像您已經用第一個示例鍵入了它一樣。 – Sean 2010-07-26 23:18:42

1

所有導入都會「在一個模塊中的Python代碼通過導入它的過程獲得對另一個模塊中的代碼的訪問權限,導入語句是調用導入機制的最常用方式,但它不是唯一的方法」 。所謂的CSV(逗號分隔值)格式是電子表格和數據庫最常用的導入和導出格式。沒有「CSV標準」,所以格式是由讀寫它的許多應用程序在操作上定義的。缺乏標準意味着不同應用程序生成和使用的數據中經常存在細微差異。這些差異可能會令人討厭從多個來源處理CSV文件。儘管分隔符和引用字符有所不同,但整體格式足夠相似,可以編寫一個可以高效處理這些數據的模塊,從編程器中隱藏讀取和寫入數據的細節。

CSV模塊實現了以CSV格式讀寫表格數據的類。它允許程序員說出「用Excel首選的格式寫這些數據」,或者「從Excel生成的這個文件中讀取數據」,而不知道Excel使用的CSV格式的確切細節。程序員還可以描述其他應用程序可以理解的CSV格式,或者定義他們自己的專用CSV格式。你所有的代碼正在循環該文件。

+0

如果您是初學者,請嘗試此網站以幫助您學習。 '[鏈接](http://www.codecademy.com)' – drewteriyaki 2016-03-21 23:59:01