彭莉
摘要:Python對初級程序員而言,是一種偉大的語言。從簡單的文字處理到WWW瀏覽器再到游戲。
關鍵詞:python;程序;設計
1 前言
Python是由Guido van Rossum在八十年代末和九十年代初,在荷蘭國家數學和計算機科學研究所設計出來的。Python是初學者的語言:Python對初級程序員而言,是一種偉大的語言,它支持廣泛的應用程序開發,從簡單的文字處理到WWW瀏覽器再到游戲。
2 Python處理CSV文件和JSON數據的步驟
2.1 處理CSV文件步驟
CSV文件是簡單的,缺少Excel電子表格的許多功能。例如,CSV文件中:值沒有類型,所有東西都是字符串;沒有字體大小或顏色的設置;沒有多個工作表;不能指定單元格的寬度和高度;不能合并單元格;不能嵌入圖像或圖表。
找出當前工作目錄中的所有CSV文件:讀取每個文件的全部內容;跳過第一行,將內容寫入一個新的CSV文件。
在代碼層面上,這意味著該程序需要做到以下幾點:循環遍歷從os.listdir ()得到的文件列表,跳過非CSV文件;創建一個CSV Reader對象,讀取該文件的內容,利用line num屬性確定要跳過哪一行;創建一個CSV Writer對象,將讀人的數據寫入新文件。
2.2 處理JSON數據步驟
Python的json模塊處理了JSON數據字符串和Python值之間轉換的所有細節,得到了json.loads()和json.dumps()函數。JSON不能存儲每一種Python值,它只能包含以下數據類型的值:字符串、整型、浮點型、布爾型、列表、字典和NoneType。
JSON不能表示Python特有的對象,如File對象、CSV Reader或Writer對象、Regex
對象或Selenium WebElement對象。
3 代碼實現
3.1 處理csv文件代碼
import csv,os
os.makedirs('headerRemoved,exist ok=True)
for csvFilenarne in os.listdir('.'):
if not csvFilename.endswtth('.csv'):
continue
prtnt('Removtng header from'+csvFtlename+'...')
csvRows=[]
csvFileObj=open(csvFilename)
readerObj=csv.reader(csvFileObj)
for row in readerObj:
if readerObj.line_num==1:
continue#skip first row
csvRows.append(row)
csvFtleObj.close()
csvFileObj=open(os.path.join('headerRe-moved,csvFtlename),'w',newline=")
csvWriter=csv.writer(csvFileObj)
for row in csvRows:
csvWriter.writerow(row)
csvFtleObj.close()
3.2 處理json數據代碼
import json,requests,sys
if len(sys.argv)<2:
print('Usage:qutckWeather.py location')
sys.exit()
location=''.join(sys.argv[1:])
url='http://apt.openweathermap.org/data/2.5/forecast/ daily?q=%s&cnt=3'%(location)
response=requests.get(url)
response.raise_for_status()
weatherData=json.loads(response.text)
w=weatherDatar['list']
print('Current weather in%s:'%(location))
print(w[0]['weather'][0]['main'],'-',w[0]['weather'][0]['description'])
print()
print('Tomoxrow:')
print(w[1]['weather'][0]['main'],'-',w[1]['weather'][0]['description'])
print()
print('Day after tomorrow:')
print(w[2]['weather'][0]['main'],'-',w[2]['weather'][0]['description'])
4 小結
CSV和JSON是常見的純文本格式,用于保存數據。它們很容易被程序解析,同時仍然讓人可讀,所以它們經常被用作簡單的電子表格或網絡應用程序的數據。csv和json模塊大大簡化了讀取和寫入CSV和JSUN文件的過程。
一個常見的任務是接受多種格式的數據,解析它,并獲得需要的特定信息。這些任務往往非常特別,商業軟件并不是最有幫助的。通過編寫自己的腳本,可以讓計算機處理大量以這些格式呈現的數據
參考文獻
[1]羅霄,任勇,山秀明.基于Python的混合語言編程及其實現[J].計算機應用與軟件,2004,(12).
[2]馬珊珊.python在日常工作處理中的應用——以員工福利采購統計為例[J].電腦知識與技術,2018,(01).