python操做MongoDB

1.在本地环境安装MongoDBpython

2.安装pymongo驱动 pip install pymongomongodb

3.python 操做 mongodbspa

1)添加数据rest

import pymongo

# 建立集合
my_client = pymongo.MongoClient("mongodb://127.0.0.1:27017")
my_db = my_client["nba"]
my_col = my_db["players"]

# 建立插入文档
data = {"name": "James", "club": "Lakers", "nickname": "King"}

# 执行插入命令
rest = my_col.insert_one(data)
print(rest)

在终端执行代码后:code

<pymongo.results.InsertOneResult object at 0x02BACD50>

插入多条文档:对象

import pymongo

# 建立集合
my_client = pymongo.MongoClient("mongodb://127.0.0.1:27017")
my_db = my_client["nba"]
my_col = my_db["players"]

# 建立多条文档
data = [{"name": "James", "club": "Lakers", "nickname": "皇帝"},
        {"name": "Curry", "club": "Warriors", "nickname": "小学生"},
        {"name": "Durant", "club": "Warriors", "nickname": "死神"},
        {"name": "Westbrook", "club": "Thunder", "nickname": "神龟"},
]


# 执行多条文档插入命令
rest = my_col.insert_many(data)
print(rest)

 

2)查询数据:blog

import pymongo

# 建立集合
my_client = pymongo.MongoClient("mongodb://127.0.0.1:27017")
my_db = my_client["nba"]
my_col = my_db["players"]

# 查询单条数据并打印
rest = my_col.find_one()
print(rest)

查询结果为:ip

{'_id': ObjectId('5c08d03ef1a49227e8239d25'), 'name': 'James', 'club': 'Lakers',
 'nickname': '皇帝'}

 

import pymongo

# 建立集合
my_client = pymongo.MongoClient("mongodb://127.0.0.1:27017")
my_db = my_client["nba"]
my_col = my_db["players"]

# 查询全部数据并打印
rest = my_col.find()
for item in rest:
    print(item)

查询结果为:文档

{'_id': ObjectId('5c08d03ef1a49227e8239d25'), 'name': 'James', 'club': 'Lakers',
 'nickname': '皇帝'}
{'_id': ObjectId('5c08d03ef1a49227e8239d26'), 'name': 'Curry', 'club': 'Warriors
', 'nickname': '小学生'}
{'_id': ObjectId('5c08d03ef1a49227e8239d27'), 'name': 'Durant', 'club': 'Warrior
s', 'nickname': '死神'}
{'_id': ObjectId('5c08d03ef1a49227e8239d28'), 'name': 'Westbrook', 'club': 'Thun
der', 'nickname': '神龟'}

 

查询指定字段的数据:it

import pymongo

# 建立集合
my_client = pymongo.MongoClient("mongodb://127.0.0.1:27017")
my_db = my_client["nba"]
my_col = my_db["players"]

# 查询全部数据并打印
rest = my_col.find({}, {"_id" :0, "name":1, "club":1, "nick_name":1})
for item in rest:
    print(item)

查询返回结果为:

{'name': 'James', 'club': 'Lakers'}
{'name': 'Curry', 'club': 'Warriors'}
{'name': 'Durant', 'club': 'Warriors'}
{'name': 'Westbrook', 'club': 'Thunder'}

注意: 除了 _id  不能在一个对象中同时指定 0 和 1,若是你设置了一个字段为 0,则其余都为 1,反之亦然。

相关文章
相关标签/搜索