国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

TinyDB 一個純Python編寫的輕量級數據庫

開發 后端 數據庫
TinyDB 是一個純 Python 編寫的輕量級數據庫,一共只有1800行代碼,沒有外部依賴項。

TinyDB 是一個純 Python 編寫的輕量級數據庫,一共只有1800行代碼,沒有外部依賴項。

TinyDB的目標是降低小型 Python 應用程序使用數據庫的難度,對于一些簡單程序而言與其用 SQL 數據庫,不如就用TinyDB, 因為它有如下特點:

  • 輕便:當前源代碼有 1800 行代碼(大約 40% 的文檔)和 1600 行測試代碼。
  • 可隨意遷移:在當前文件夾下生成數據庫文件,不需要任何服務,可以隨意遷移。
  • 簡單:TinyDB 通過提供簡單干凈的 API 使得用戶易于使用。
  • 用純 Python 編寫: TinyDB 既不需要外部服務器,也不需要任何來自 PyPI 的依賴項。
  • 適用于 Python 3.6+ 和 PyPy3: TinyDB 適用于所有現代版本的 Python 和 PyPy。
  • 強大的可擴展性:您可以通過編寫中間件修改存儲的行為來輕松擴展 TinyDB。
  • 100% 測試覆蓋率:無需解釋。

1.準備

開始之前,你要確保Python和pip已經成功安裝在電腦上。

請選擇以下任一種方式輸入命令安裝依賴:

1. Windows 環境 打開 Cmd (開始-運行-CMD)。

2. MacOS 環境 打開 Terminal (command+空格輸入Terminal)。

3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.

pip install tinydb

2.簡單的增刪改查示例

初始化一個DB文件:

from tinydb import TinyDB
db = TinyDB('db.json')

這樣就在當前文件夾下生成了一個名為 `db.json` 的數據庫文件。

往里面插入數據:

from tinydb import TinyDB
db = TinyDB('db.json')
db.insert({'type': 'apple', 'count': 7})
db.insert({'type': 'peach', 'count': 3})

可以看到,我們可以直接往數據庫里插入字典數據,不需要任何處理。下面是批量插入的方法:

db.insert_multiple([
{'name': 'John', 'age': 22},
{'name': 'John', 'age': 37}])
db.insert_multiple({'int': 1, 'value': i} for i in range(2))

查詢所有數據:

from tinydb import TinyDB
db = TinyDB('db.json')
db.all()
# [{'count': 7, 'type': 'apple'}, {'count': 3, 'type': 'peach'}]

除了 .all() 我們還可以使用for循環遍歷db:

from tinydb import TinyDB
db = TinyDB('db.json')
for item in db:
print(item)
# {'count': 7, 'type': 'apple'}
# {'count': 3, 'type': 'peach'}

如果你需要搜索特定數據,可以使用Query():

from tinydb import TinyDB
db = TinyDB('db.json')
Fruit = Query()
db.search(Fruit.type == 'peach')
# [{'count': 3, 'type': 'peach'}]
db.search(Fruit.count > 5)
# [{'count': 7, 'type': 'apple'}]

更新數據:

from tinydb import TinyDB
db = TinyDB('db.json')
db.update({'foo': 'bar'})
# 刪除某個Key
from tinydb.operations import delete
db.update(delete('key1'), User.name == 'John')

刪除數據:

刪除數據也可以使用類似的條件語句:

from tinydb import TinyDB
db = TinyDB('db.json')
db.remove(Fruit.count < 5)
db.all()
# [{'count': 10, 'type': 'apple'}]

清空整個數據庫:

from tinydb import TinyDB
db = TinyDB('db.json')
db.truncate()
db.all()
# []

3.高級查詢

除了點操作符訪問數據,你還可以用原生的dict訪問表示法:

# 寫法1
db.search(User.country-code == 'foo')
# 寫法2
db.search(User['country-code'] == 'foo')

這兩種寫法是等效的。

另外在常見的查詢運算符(==, <, >, ...)之外,TinyDB還支持where語句:

from tinydb import where
db.search(where('field') == 'value')

這等同于:

db.search(Query()['field'] == 'value')

這種語法還能訪問嵌套字段:

db.search(where('birthday').year == 1900)
# 或者
db.search(where('birthday')['year'] == 1900)

Any 查詢方法:

db.search(Group.permissions.any(Permission.type == 'read'))
# [{'name': 'user', 'permissions': [{'type': 'read'}]},
# {'name': 'sudo', 'permissions': [{'type': 'read'}, {'type': 'sudo'}]},
# {'name': 'admin', 'permissions':
# [{'type': 'read'}, {'type': 'write'}, {'type': 'sudo'}]}]

檢查單個項目是否包含在列表中:

db.search(User.name.one_of(['jane', 'john']))

TinyDB還支持和Pandas類似的邏輯操作:

# Negate a query:
db.search(~ (User.name == 'John'))
# Logical AND:
db.search((User.name == 'John') & (User.age <= 30))
# Logical OR:
db.search((User.name == 'John') | (User.name == 'Bob'))

TinyDB的介紹就到這里,你還可以訪問他們的官方文檔,查看更多的使用方法:

??https://tinydb.readthedocs.io/en/latest/usage.html???

尤其是想基于TinyDB做些存儲優化的同學,你們可以詳細閱讀 Storage & Middleware 章節。

責任編輯:龐桂玉 來源: Python客棧
相關推薦

2023-11-24 11:11:08

Python數據庫

2021-12-06 15:11:34

鴻蒙HarmonyOS應用

2022-07-14 11:31:04

SQLToolsVScode數據庫

2021-08-31 14:58:52

鴻蒙HarmonyOS應用

2025-04-17 04:00:00

SQLite-WebSQLite數據庫

2019-12-13 19:00:26

PekwmLinux桌面

2025-02-06 08:06:05

2023-12-13 08:22:45

SQLite關系型數據庫

2022-06-06 22:23:26

Tina工具Markdown

2020-06-10 08:23:44

JavaScript開發Web

2023-06-28 08:16:50

Autofac應用程序

2021-10-27 11:29:32

框架Web開發

2013-02-20 14:54:03

C#.NETNDatabase

2025-06-27 10:41:04

Redis數據庫集群

2022-08-10 12:21:07

PythonWebBottle

2025-04-25 09:00:00

2021-01-05 08:35:24

GNU nanoVim編輯器

2022-05-16 07:37:58

SQL 編輯器數據庫管理工具

2024-03-05 18:40:15

LiteDB數據庫NoSQL

2025-01-09 08:00:00

Fluxy文件傳輸
點贊
收藏

51CTO技術棧公眾號

超碰一区二区| 午夜激情在线观看视频| 国产一区二区美女视频| 亚洲国产精品精华液2区45| 卡通动漫精品一区二区三区| 三上悠亚在线观看| 日韩videos| 久久成人精品一区二区三区| 精品久久久久久国产| 石原莉奈在线亚洲三区| 经典三级久久| 蜜桃视频在线免费| 99色这里只有精品| 国产日韩专区在线| 亚洲欧美精品在线| 一区二区在线免费| 奇米色一区二区| 日韩免费电影在线观看| 成人短视频在线观看| 人妻精品无码一区二区三区 | 蜜桃网站在线观看| 日本亚洲欧洲色| 亚洲第一网中文字幕| 亚洲欧美电影一区二区| 日韩福利电影在线观看| 亚洲涩涩av| 亚洲国产97在线精品一区| 99久久精品国产网站| 国产亚洲精品久久| 2018av男人天堂| 999国产精品亚洲77777| 麻豆成人av在线| 色婷婷一区二区三区四区| 国产精品综合不卡av| y4480在线8影院| 亚洲有吗中文字幕| 欧美中文字幕一区| 国产偷久久久精品专区| 你懂的在线视频| 国产欧美91| 亚洲国产一区二区三区在线观看| 欧美国产日韩激情| а√在线天堂官网| 母乳一区在线观看| 亚洲欧美aⅴ...| 在线日韩第一页| 免费无码av片在线观看| 免费一区二区| 精品日韩欧美一区二区| 三年中文高清在线观看第6集| 欧美男男激情videos| 99视频超级精品| 91精品国产精品| 天堂网www中文在线| 一片黄亚洲嫩模| 成人满18在线观看网站免费| 激情偷乱视频一区二区三区| 国产精品视频成人| 国产精品影视| 国产综合久久久久影院| 国产亚洲欧美另类一区二区三区| 欧美3p在线观看| 亚洲精品视频免费| a免费在线观看| 日本道色综合久久| 成人黄色动漫| 最近免费中文字幕视频2019| 欧美三级网站| 精品91自产拍在线观看一区| 国产一线二线三线在线观看| 国产激情一区二区三区四区| 欧美黑人3p| 三区四区不卡| 成人h动漫精品一区二区器材| 91欧美极品| 精品国产一区二区三区香蕉沈先生| 日韩www.| 欧美精品九九| 青青草成人在线观看| 成人免费视频一区二区| 久久毛片高清国产| 亚洲精品五月天| 欧美亚洲国产一区二区三区| 亚洲电影免费观看高清完整版在线观看| 亚洲国产精品久久精品怡红院| 最新国产精品亚洲| 欧美最猛黑人xxxx黑人猛叫黄 | 美女诱惑一区二区| 国产一区91精品张津瑜| 久久久精品蜜桃| 亚洲午夜久久久久久久久久久 | 三级视频在线播放| 成人福利片网站| 久久麻豆视频| 欧美精品系列| 美女爽到呻吟久久久久| 国产成人8x视频一区二区| 国产精品久久久久三级| 一本大道av一区二区在线播放| 欧美不卡视频一区| 蜜月aⅴ免费一区二区三区| 国产伦精品一区二区三区精品视频| 欧美精品一区三区在线观看| 你懂的av在线| 在线观看免费网站| 美女的胸无遮挡在线观看| 麻豆一区二区| 99精品国产在热久久婷婷| www.欧美色图| 黄色精品在线看| 日韩精品在线电影| 91av在线网站| 欧美自拍资源在线| 久久婷婷国产91天堂综合精品| 国产1区2区3区在线| 亚洲精品一区三区三区在线观看| 欧美丝袜激情| 精品一区二区免费在线观看| 亚洲人成在线观看一区二区| 欧美一区二区三区免费在线看 | 欧美一二三区在线| 久久香蕉国产线看观看网| 成人久久18免费网站图片| 香蕉视频免费版| 992tv在线观看免费进| av资源网在线播放| 国产成人一区| 国精产品一区一区三区mba桃花| 亚洲少妇屁股交4| 欧美一区二区高清| 97精品国产aⅴ7777| 视频一区视频二区视频三区视频四区国产 | 成人免费淫片aa视频免费| 99中文字幕在线观看| 国产对白在线正在播放| 涩涩涩视频在线观看| 999国产精品999久久久久久| 成人av资源网站| 欧美日韩午夜在线视频| 国语自产精品视频在线看| 欧美一区激情视频在线观看| jlzzjlzz欧美| 超碰aⅴ人人做人人爽欧美| 欧美一区精品| 国产女同性恋一区二区| 亚洲国产精品va在线| 91免费在线视频| 婷婷无套内射影院| 日本最黄一级片免费在线| 欧美日韩一区 二区 三区 久久精品| 精品国产免费人成电影在线观看四季| 97人人模人人爽人人喊中文字 | 欧美好骚综合网| 国产麻豆欧美日韩一区| 色偷偷久久一区二区三区| 在线精品视频视频中文字幕| 国产精品区免费视频| 色偷偷亚洲第一综合| 日本不卡网站| 午夜精品剧场| 综合色中文字幕| 中文字幕精品av| 久久久久久久久久久久久久一区| 成年美女网站| 亚洲视频资源| 日本sm残虐另类| 欧美午夜视频在线观看| 国内精品久久久久伊人av| 香蕉视频免费版| 奇米影视777在线欧美电影观看| 超碰97免费观看| 中文字幕中文字幕在线中文字幕三区| abab456成人免费网址| 99伊人成综合| 亚洲国产精品人人做人人爽| 久久精品一区中文字幕| 深夜福利成人| 二区三区在线播放| 精品在线播放| 久久奇米777| 日韩精品在线观看一区| 国产精品有限公司| 黄动漫视频高清在线| 草草视频在线一区二区| 成人午夜精品在线| 亚洲激情自拍图| 麻豆91av| 国产精品一区二区婷婷| 国产剧情在线观看一区| 国产午夜精品一区二区| 亚洲性生活视频在线观看| 亚洲成人午夜在线| 成年人网站在线| 在线播放亚洲| 欧美性色视频在线| 国产精品一区久久| 黄色免费观看网站| 女同一区二区三区| 国产情人综合久久777777| 久久综合色88|