最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實現(xiàn)簡單文件讀寫函數(shù)

 更新時間:2021年02月25日 17:23:22   作者:李子園的夢想  
這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)簡單文件讀寫函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

python作為腳本性語言,加上它的簡便易用性。會經(jīng)常當(dāng)作腳本用來處理一下數(shù)據(jù)和格式。其中處理文件就是頻繁用處之一。簡單編寫幾個常用的xls和txt讀寫函數(shù),以后可以快速復(fù)用。

用到xlrd庫函數(shù)需要預(yù)先install

命令:pip install xlrd

直接貼源碼:

#! /usr/bin/python
# coding:utf-8
 
import json
import xlrd
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
 
 
class ObjectFileReadAndWrite(object):
 
 @classmethod
 def readXlsToDict(cls, xlsFile):
 '''
 讀取xls文件生成dict
 '''
 data = xlrd.open_workbook(xlsFile)
 table = data.sheet_by_index(0)
 ret = []
 keys = table.row_values(0)
 for rowNum in range(table.nrows):
 oneRowValues = table.row_values(rowNum)
 if rowNum > 0:
 d = {}
 for colIdx, key in enumerate(keys):
 d[key] = oneRowValues[colIdx]
 ret.append(d)
 return ret
 
 @classmethod
 def readXlsToList(cls, xlsFile):
 '''
 讀取xls文件生成list
 '''
 data = xlrd.open_workbook(xlsFile)
 table = data.sheet_by_index(0)
 ret = []
 for rowNum in range(table.nrows):
 oneRowValues = table.row_values(rowNum)
 ret.append(oneRowValues)
 return ret
 
 @classmethod
 def readTxt(cls, txtFile, sep):
 '''
 讀取txt文件
 '''
 # with + open 可保證with語句執(zhí)行完畢后同時關(guān)閉打開的文件句柄。
 ret = []
 with open(txtFile, "r") as f:
 for line in f.readlines():
 line = line.strip('\n') # 去掉換行符
 listInfo = line.split(sep) # 以 sep 分割成數(shù)組
 if listInfo:
 ret.append(listInfo)
 return ret
 
 @classmethod
 def writeToJson(cls, jsonFile, ret):
 '''
 寫入json文件
 '''
 with open(jsonFile, 'w') as fp:
 json.dump(ret, fp, indent=2, sort_keys=True, encoding="utf-8", ensure_ascii=False)
 
 @classmethod
 def writeFromStr(cls, filePath, s):
 '''
 string寫入文件
 '''
 with open(filePath, 'w') as fp:
 fp.write(s)
 
 @classmethod
 def writeFromList(cls, filePath, wList):
 '''
 list寫入文件
 '''
 with open(filePath, 'w') as fp:
 fp.writelines(wList)
 
 
if __name__ == "__main__":
 obj = ObjectFileReadAndWrite()
 # xls
 ret = obj.readXlsToDict(xlsFile='xxx.xls')
 obj.writeToJson('xxx.json', ret)
 # txt
 ret2 = obj.readTxt(txtFile='result.txt', sep=" ")
 obj.writeToJson('result.json', ret2)

因文件中有中文,中間遇到中文亂碼問題

import sys
reload(sys)
sys.setdefaultencoding('utf-8')
 
 
# encoding="utf-8", ensure_ascii=False

1、這個是由于Unicode編碼與ASCII編碼的不兼容造成的。
2、通常都是ascii,由此Python自然調(diào)用ascii編碼解碼程序去處理字符流,當(dāng)字符流不屬于ascii范圍內(nèi),就會拋出異常(ordinal not in range(128))

百度了下通過 以上方式 解決了。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Scala中使用Jsoup庫處理HTML文檔的案例分析

    Scala中使用Jsoup庫處理HTML文檔的案例分析

    Scala是一種多范式的編程語言,具有函數(shù)式編程和面向?qū)ο缶幊痰奶攸c,同時也能夠與Java語言完美兼容,它擁有強大的類型推斷、高階函數(shù)、模式匹配等特性,使得代碼更加簡潔、靈活和易于維護(hù),這篇文章主要介紹了Scala中使用Jsoup庫處理HTML文檔的案例分析,需要的朋友可以參考下
    2024-04-04
  • python調(diào)用staf自動化框架的方法

    python調(diào)用staf自動化框架的方法

    今天小編就為大家分享一篇python調(diào)用staf自動化框架的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python常用擴展插件使用教程解析

    Python常用擴展插件使用教程解析

    這篇文章主要介紹了Python常用擴展插件使用教程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • 關(guān)于PyQt5中QtGui.QImage圖片顯示問題解析

    關(guān)于PyQt5中QtGui.QImage圖片顯示問題解析

    PyQt作為Qt語言的Python擴展,可以用來方便快速的開發(fā)界面應(yīng)用,本文重點給大家介紹PyQt5中的QtGui.QImage圖片顯示問題分析,需要的朋友可以參考下
    2022-03-03
  • python繪制分組對比柱狀圖

    python繪制分組對比柱狀圖

    這篇文章主要為大家詳細(xì)介紹了python繪制分組對比柱狀圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Pycharm?2020最新永久激活碼(附最新激活碼和插件)

    Pycharm?2020最新永久激活碼(附最新激活碼和插件)

    最近很多朋友的Pycharm激活時間又過期了,今天小編再把激活的方法匯總和工具分享一下,文中給大家分享兩種方式,需要的朋友直接拿去用吧
    2020-01-01
  • flask操作數(shù)據(jù)庫相關(guān)配置及實現(xiàn)示例步驟全解

    flask操作數(shù)據(jù)庫相關(guān)配置及實現(xiàn)示例步驟全解

    這篇文章主要介紹了flask操作數(shù)據(jù)庫相關(guān)配置及實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Python實現(xiàn)堆排序的方法詳解

    Python實現(xiàn)堆排序的方法詳解

    這篇文章主要介紹了Python實現(xiàn)堆排序的方法,結(jié)合實例形式詳細(xì)分析了堆排序的原理,實現(xiàn)方法與相關(guān)注意事項,需要的朋友可以參考下
    2016-05-05
  • Python3使用requests登錄人人影視網(wǎng)站的方法

    Python3使用requests登錄人人影視網(wǎng)站的方法

    通過本文給大家介紹python代碼實現(xiàn)使用requests登錄網(wǎng)站的過程。非常具有參考價值,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05
  • Python 圖像處理 Pillow 庫詳情

    Python 圖像處理 Pillow 庫詳情

    這篇文章主要介紹了Python 圖像處理 Pillow 庫,圖像處理是常用的技術(shù),python 擁有豐富的第三方擴展庫,Pillow 是 Python3 最常用的圖像處理庫,目前最高版本5.2.0。Python2 使用Pil庫,兩者是使用方法差不多,區(qū)別在于類的引用不同。下面來看看文章的詳細(xì)內(nèi)容
    2021-11-11

最新評論

行唐县| 丹寨县| 龙南县| 方正县| 桃园县| 濮阳县| 金乡县| 垣曲县| 赤峰市| 简阳市| 筠连县| 成安县| 漳州市| 玛多县| 武功县| 江都市| 嘉禾县| 桃园县| 南华县| 尖扎县| 威宁| 腾冲县| 克拉玛依市| 蓬安县| 阿尔山市| 南安市| 呼伦贝尔市| 莱阳市| 广州市| 恩施市| 临潭县| 台州市| 武宁县| 昌图县| 两当县| 阿拉善盟| 梁平县| 水城县| 酉阳| 西城区| 亳州市|