1. 程式人生 > >python 儲存資料的方式

python 儲存資料的方式

轉自https://blog.csdn.net/weixin_39198406/article/details/78231430


json檔案

json是一種輕量級的資料交換格式。採用完全獨立於程式語言的文字格式來儲存和表示資料。層次結構簡潔而清晰,易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網路傳輸效率。

最主要的是,通過json這個包可以很方便的解決無論是py2還是py3中的編碼問題,json的內容結構也近似於python中的字典和列表,操作起來特別方便。

[python]
  view plain  copy
  1. import json  
  2. # 此時有一個json檔案,結構大概是 [{},{},{}...] 開啟這個檔案  
  3. # 使用json load讀取檔案內容,然後可以直接用列表或者字典的方式去操作con這個變數  
  4. con = json.loads(content)  
  5. # 那麼如何儲存為json檔案呢?  
  6. # 使用dumps將列表序列化並且轉換為unicode編碼,儲存的時候,就可以存你最喜歡的utf-8了  
  7. lis = [{},{},{}...]  
  8. data = json.dumps(lis, ensure_ascii=False)  
  9. f.write(data.encode('utf-8'))  


csv檔案

轉換為csv檔案後,我們就可以直接用excel開啟拉圖表了

[python]  view plain  copy
  1. import csv  
  2. # 開啟檔案  
  3. with open(filename, 'w') as f:  
  4.     writer = csv.writer(f) # 構造寫入器  
  5.     data = ('1','2','3'# 填寫三格  
  6.     data = ('','','3')   # 填寫一格,前兩格空起來  
  7.     data = ('1','')      # 填寫第一格,後面無論多少格都空起來  
  8.     writer.writerow(data)  # writerow每執行一次,寫入一行 注意其中的引數data需要是一個元組  
# 注意,在windows中,開啟檔案需要使用
with open(filename, 'w', newline='') as f:
# 否則每寫一行都會多一個空行
# 原因是 windows中換行符號是 \n\r ,csv庫中並沒有做特別的處理,所以會產生空行


MySQL資料庫

應該是最常用的操作了,使用mysql的優點是看資料真的很直觀(如果使用GUI程式的話)

[python]  view plain  copy
  1. 匯入包略微不一樣  
  2. @python3  
  3. import pymysql  
  4. @python2  
  5. import MySQLdb  
  6.   
  7. # 建立連線 注意資料庫寫入資料時資料的編碼  
  8. conn = MySQLdb.connect(host='localhost', port=3306, db='test',  
  9. user='root', passwd='', charset='utf8')  
  10.   
  11. # 新建遊標 遊標操作sql語句  
  12. cur = conn.cursor()  
  13. result = cur.execute("insert into students(name) values('Jack')")  
  14. result = cur.execute("insert into students(name,age) values(%s,%s)", params)  
  15.   
  16. # sql對資料庫資料有改變的時候,使用commit()提交,否則不生效  
  17. conn.commit()  
  18.   
  19. # 返回資料到python,使用fetchone和fetchall從記憶體中取資料,取了一個清空一個  
  20. cur.execute('select * from students where id between 1 and 5')  
  21. result=cur.fetchone()  
  22. result=cur.fetchall()  
  23.   
  24. # 最後記得關閉連線  
  25. cur.close()  
  26. conn.close()  


Redis資料庫

優點是方便,速度快,需要注意的是取出的資料是二進位制資料,一般需要轉為字串再操作。

操作大全: python-redis操作大全

[python]  view plain  copy
  1. import redis  
  2.   
  3. # 建立連線  
  4. client = redis.Redis(host='lcoalhost', port=6379)  
  5.   
  6. # 操作資料  
  7. client.set('nums', [1,2,3,4,5])  
  8. result = client.get('name')  
  9.   
  10. # 使用事務(避免失敗操作導致資料只操作了一半)  
  11. pipe = client.pipeline()  
  12. pipe.set('name''Jack')  
  13. pipe.execute()  


Mongdb資料庫

優點是不在乎資料結構,需要注意的是取出來的時候要寫個指令碼整理一下。

[python]  view plain  copy
  1. import pymongo  
  2.   
  3. # 建立連線 指定資料表  
  4. client = pymongo.MongoClient('localhost'27017)  
  5. test1_db = client.test1  
  6. sheet_stu = db.stu  
  7.   
  8. # 操作資料  
  9. info = {name:'Jack',age:18}  
  10. info_id = stu.insert_one(info).inserted_id  
  11. cur_list = [cur for cur in stu.find()]  
  12. count = stu.count()  

在python程式設計開發中,總是不可避免的遇到資料儲存的問題,下面就介紹python與幾種資料儲存方式互動的方法。


json檔案

json是一種輕量級的資料交換格式。採用完全獨立於程式語言的文字格式來儲存和表示資料。層次結構簡潔而清晰,易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網路傳輸效率。

最主要的是,通過json這個包可以很方便的解決無論是py2還是py3中的編碼問題,json的內容結構也近似於python中的字典和列表,操作起來特別方便。

[python]  view plain  copy
  1. import json  
  2. # 此時有一個json檔案,結構大概是 [{},{},{}...] 開啟這個檔案  
  3. # 使用json load讀取檔案內容,然後可以直接用列表或者字典的方式去操作con這個變數  
  4. con = json.loads(content)  
  5. # 那麼如何儲存為json檔案呢?  
  6. # 使用dumps將列表序列化並且轉換為unicode編碼,儲存的時候,就可以存你最喜歡的utf-8了  
  7. lis = [{},{},{}...]  
  8. data = json.dumps(lis, ensure_ascii=False)  
  9. f.write(data.encode('utf-8'))  


csv檔案

轉換為csv檔案後,我們就可以直接用excel開啟拉圖表了

[python]  view plain  copy
  1. import csv  
  2. # 開啟檔案  
  3. with open(filename, 'w') as f:  
  4.     writer = csv.writer(f) # 構造寫入器  
  5.     data = ('1','2','3'# 填寫三格  
  6.     data = ('','','3')   # 填寫一格,前兩格空起來  
  7.     data = ('1','')      # 填寫第一格,後面無論多少格都空起來  
  8.     writer.writerow(data)  # writerow每執行一次,寫入一行 注意其中的引數data需要是一個元組  
# 注意,在windows中,開啟檔案需要使用
with open(filename, 'w', newline='') as f:
# 否則每寫一行都會多一個空行
# 原因是 windows中換行符號是 \n\r ,csv庫中並沒有做特別的處理,所以會產生空行


MySQL資料庫

應該是最常用的操作了,使用mysql的優點是看資料真的很直觀(如果使用GUI程式的話)

[python]  view plain  copy
  1. 匯入包略微不一樣  
  2. @python3  
  3. import pymysql  
  4. @python2  
  5. import MySQLdb  
  6.   
  7. # 建立連線 注意資料庫寫入資料時資料的編碼  
  8. conn = MySQLdb.connect(host='localhost', port=

    相關推薦

    python 儲存資料方式

    轉自https://blog.csdn.net/weixin_39198406/article/details/78231430 json檔案 json是一種輕量級的資料交換格式。採用完全獨立於程式語言的文字格式來儲存和表示

    python儲存資料方式

    python儲存資料的方式2017年10月13日 23:38:10 Nick_Spider 閱讀數:59286 標籤: redis 資料庫 爬蟲 儲存 結構 更多 個人分類: 資料庫 爬蟲 python 版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/we

    python 儲存資料為excel格式和txt格式

     excel 儲存方法: book = xlwt.Workbook() #建立表單 sheet = book.add_sheet(u'sheet1',cell_overwrite_ok=True) sheet.write(0,0,'id') sheet.write(0,1,'tex

    python儲存數據的方式

    with python2 應該 enc 沒有 原創文章 set 變量 fetchall python儲存數據的方式2017年10月13日 23:38:10 Nick_Spider 閱讀數:59286 標簽: redis 數據庫 爬蟲 存儲 結構 更多 個人分類: 數據庫 爬

    python資料結構的儲存方法

    python中的一切都是物件,任何自定義的資料結構都可以寫成類 一、線性表 1.陣列實現 list, import array, np.array Python中list實現為動態陣列,而不是連結串列? 常用方法 append,extend, insert ,remove …

    資料基礎---《利用Python進行資料分析·第2版》第6章 資料載入、儲存與檔案格式

    之前自己對於numpy和pandas是要用的時候東學一點西一點,直到看到《利用Python進行資料分析·第2版》,覺得只看這一篇就夠了。非常感謝原博主的翻譯和分享。 訪問資料是使用本書所介紹的這些工具的第一步。我會著重介紹pandas的資料輸入與輸出,雖然別的庫中也有不少以此為目的的工具

    python 開啟和儲存資料檔案

    開啟資料檔案 read_csv 從檔案,URL、檔案型物件中載入帶分隔符資料,預設分隔符為逗號,輸出為字典集 1:需要確定檔案的路徑,格式,資料分隔符,有無列標題,編碼格式,該方式只能適用於開啟資料檔

    Python爬蟲資料的幾種儲存方法

    txt檔案:   1, open('檔名', '讀寫模式' ), f = open('csdn.txt', 'w', encodeing='utf-8')   2,f

    Android資料儲存方式

    1.Android常用的資料儲存方式 File儲存 SharedPreferences儲存 SQLite輕量型資料庫 ContentProvider 四大元件之一 2.File儲存 最基本的一種資料儲存方式,不對儲存的內容進行任何的格式化處理,所有

    Python程式設計從入門到實踐筆記——異常和儲存資料

    Python程式設計從入門到實踐筆記——異常和儲存資料 #coding=gbk #Python程式設計從入門到實踐筆記——異常和儲存資料 #10.3異常 #Python使用被稱為異常的特殊物件來管理程式執行期間發生的錯誤。每當發生讓Python不知所措的錯誤時,它都會建立一個異常物件。 #如果編寫了處

    二,影象資料python儲存結構

    # -*- coding: utf-8 -*- """ Created on Sat Nov 17 08:40:21 2018 @author: shenfangyuan """ # -*- coding:utf-8 -*- import tensorflow as tf import nu

    Python儲存類物件資料資料

    首先先介紹一種儲存字典,列表等基礎的Python型別進行儲存: 儲存基礎資料 pickle是一個進行序列化的包,這裡,直接儲存一個具有3個字典,2個列表元素的列表! with op

    採用儲存複製方式同步資料,實現資料庫安全升級

    下載網站:www.SyncNavigator.CN   客服QQ1793040 ----------------------------------------------------------     關於HKROnline

    Python以json方式傳送資料

    今天在爬一個網站的時候遇到了這個問題,感謝老哥的解決方案 import urllib2 import json data = { 'a': 123, 'b': 456 } headers = {'Content-Type': 'app

    python資料儲存

    python 資料儲存 資料儲存的方式 對於python的檔案儲存具有很多形式,主要的有TXT,JSON,CSV格式,除此之外還可以儲存到資料庫中 思路分析 1:txt儲存 目的:儲存知乎上面的"發現"頁面的“熱門話題”部分 使用requests獲取網

    Redis學習——Redis持久化之RDB備份方式儲存資料

    從這一個介紹裡面知道,redis比memcache作為快取資料庫強大的地方,一個是支援的資料型別比較多,另一個就是redis持久化功能。 下面就介紹Re

    python常見資料儲存 csv txt pickle

    1.csv檔案 (1)寫入 import csv with open('test.csv', 'w', newline='', encoding='utf-8') as wf: # 用csv檔案包裝 writer = csv.writer(wf) # 建立標頭檔案 he

    python使用sqlite資料庫儲存資料

    SQLite是一款開源的資料庫引擎,由於無需執行單獨的伺服器,因此成為小型專案和簡單Web應用的理想選擇。本質上來說,SQLite資料庫可以看作是單一的、自包含的(不依賴其他模組和元件)的資料庫檔案.s

    Python學習筆記 Day12 json儲存資料及階段總結

    Day 12 json儲存資料 及 階段總結 json格式化 JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式。它基於 ECMAScript (歐洲計算機協會制定的js規範)的一個子集,採用完全獨立於程式語言的文字

    python爬蟲:使用Mongodb資料庫儲存資料學習筆記

    # -*- coding: utf-8 -*- """ Created on Sat Oct 22 21:01:23 2016 @author: hhxsym """ import requests