• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于python的處理CSV文件和JSON數(shù)據(jù)的程序與設(shè)計(jì)

      2018-01-17 10:41:28彭莉
      鋒繪 2018年7期
      關(guān)鍵詞:程序設(shè)計(jì)

      彭莉

      摘要:Python對初級程序員而言,是一種偉大的語言。從簡單的文字處理到WWW瀏覽器再到游戲。

      關(guān)鍵詞:python;程序;設(shè)計(jì)

      1 前言

      Python是由Guido van Rossum在八十年代末和九十年代初,在荷蘭國家數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究所設(shè)計(jì)出來的。Python是初學(xué)者的語言:Python對初級程序員而言,是一種偉大的語言,它支持廣泛的應(yīng)用程序開發(fā),從簡單的文字處理到WWW瀏覽器再到游戲。

      2 Python處理CSV文件和JSON數(shù)據(jù)的步驟

      2.1 處理CSV文件步驟

      CSV文件是簡單的,缺少Excel電子表格的許多功能。例如,CSV文件中:值沒有類型,所有東西都是字符串;沒有字體大小或顏色的設(shè)置;沒有多個(gè)工作表;不能指定單元格的寬度和高度;不能合并單元格;不能嵌入圖像或圖表。

      找出當(dāng)前工作目錄中的所有CSV文件:讀取每個(gè)文件的全部內(nèi)容;跳過第一行,將內(nèi)容寫入一個(gè)新的CSV文件。

      在代碼層面上,這意味著該程序需要做到以下幾點(diǎn):循環(huán)遍歷從os.listdir ()得到的文件列表,跳過非CSV文件;創(chuàng)建一個(gè)CSV Reader對象,讀取該文件的內(nèi)容,利用line num屬性確定要跳過哪一行;創(chuàng)建一個(gè)CSV Writer對象,將讀人的數(shù)據(jù)寫入新文件。

      2.2 處理JSON數(shù)據(jù)步驟

      Python的json模塊處理了JSON數(shù)據(jù)字符串和Python值之間轉(zhuǎn)換的所有細(xì)節(jié),得到了json.loads()和json.dumps()函數(shù)。JSON不能存儲每一種Python值,它只能包含以下數(shù)據(jù)類型的值:字符串、整型、浮點(diǎn)型、布爾型、列表、字典和NoneType。

      JSON不能表示Python特有的對象,如File對象、CSV Reader或Writer對象、Regex

      對象或Selenium WebElement對象。

      3 代碼實(shí)現(xiàn)

      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數(shù)據(jù)代碼

      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 小結(jié)

      CSV和JSON是常見的純文本格式,用于保存數(shù)據(jù)。它們很容易被程序解析,同時(shí)仍然讓人可讀,所以它們經(jīng)常被用作簡單的電子表格或網(wǎng)絡(luò)應(yīng)用程序的數(shù)據(jù)。csv和json模塊大大簡化了讀取和寫入CSV和JSUN文件的過程。

      一個(gè)常見的任務(wù)是接受多種格式的數(shù)據(jù),解析它,并獲得需要的特定信息。這些任務(wù)往往非常特別,商業(yè)軟件并不是最有幫助的。通過編寫自己的腳本,可以讓計(jì)算機(jī)處理大量以這些格式呈現(xiàn)的數(shù)據(jù)

      參考文獻(xiàn)

      [1]羅霄,任勇,山秀明.基于Python的混合語言編程及其實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2004,(12).

      [2]馬珊珊.python在日常工作處理中的應(yīng)用——以員工福利采購統(tǒng)計(jì)為例[J].電腦知識與技術(shù),2018,(01).

      猜你喜歡
      程序設(shè)計(jì)
      試論我國未決羈押程序的立法完善
      瞞天過?!律O(shè)計(jì)萌到家
      “程序猿”的生活什么樣
      設(shè)計(jì)秀
      海峽姐妹(2017年7期)2017-07-31 19:08:17
      有種設(shè)計(jì)叫而專
      Coco薇(2017年5期)2017-06-05 08:53:16
      英國與歐盟正式啟動(dòng)“離婚”程序程序
      創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
      設(shè)計(jì)之味
      舒適廣告(2008年9期)2008-09-22 10:02:48
      南投县| 重庆市| 四子王旗| 孟津县| 称多县| 汕头市| 东乡族自治县| 梅州市| 福海县| 成武县| 泰宁县| 平潭县| 南木林县| 黎川县| 康马县| 永新县| 遵化市| 黄陵县| 无极县| 宿州市| 鄂托克旗| 盱眙县| 铜鼓县| 东丰县| 健康| 犍为县| 镇宁| 资源县| 洛扎县| 尚义县| 松潘县| 儋州市| 长治市| 泽普县| 喀什市| 芜湖县| 九江县| 大埔区| 南汇区| 额尔古纳市| 湘潭市|