<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 安裝 ~~~ pip install pymongo ~~~ [教程][1] # 使用 ## 引入pymongo ~~~ from pymongo import MongoClient ~~~ ## 創建連接 使用MongoClient創建一個連接 ~~~ client = MongoClient() ~~~ 如果你沒有特別為MongoClient指定參數,MongoClient將使用MongoDB默認參數即localhost接口和27017端口。 你可以使用一個完整的MongoDB URI來定義連接: ~~~ client = MongoClient("mongodb://mongodb0.example.net:27019") ~~~ 這個MongoClient代表了一個運行于mongodb.example.net端口號為27019的MongoDB連接。 ## 訪問數據庫對象 第一個你用pymongo來交互的基本類是Database,它代表了MongoDB中的數據庫(database)結構。數據庫保存了邏輯上相關的集合組。MongoDB將在第一次使用新的數據庫的時候自動創建它。 你可以使用屬性訪問的方式,賦值一個數據庫(例如名字為primer)給本地變量db,如下所示: ~~~ db = client.primer ~~~ 你也可以使用字典形式訪問一個數據庫,這會移除Python特有的命名限制,如下所示: ~~~ db = client['primer'] ~~~ ## 訪問集合對象 第二個你將使用pymongo進行交互的基本類是Collection,它代表了MongoDB中的集合(collection)結構。集合(collection)保存了邏輯上相關的文檔組。 你可以直接使用字典形式訪問集合或者通過一個訪問一個數據庫對象的屬性來訪問集合,如下所示: ~~~ db.dataset db['dataset'] ~~~ 你也可以給一個變量進行賦值,以在其他地方使用這個集合,如下所示: ~~~ coll = db.dataset coll = db['dataset'] ~~~ ## 查詢 ``` results = collection.find() results = collection.find_one() results = collection.find({'age': {'$gt': 20}}) ``` ![](https://ws1.sinaimg.cn/large/006tNc79gy1g26tqgzdrxj30u00gnjs8.jpg) 另外,還可以進行正則匹配查詢。例如,查詢名字以M開頭的學生數據,示例如下: ~~~ results = collection.find({'name': {'$regex': '^M.*'}}) ~~~ 這里使用`$regex`來指定正則匹配,`^M.*`代表以M開頭的正則表達式。 這里將一些功能符號再歸類為下表。 ![](https://ws1.sinaimg.cn/large/006tNc79gy1g26trqqxh6j30u00o4wg2.jpg) ## 對結果進行排序 要指定結果集的順序,可以通過追加`sort()`方法進行查詢。給`sort()`方法傳遞需要排序的字段和配需類型等。 ~~~ pymongo.ASCENDING表示升序排序。 pymongo.DESCENDING表示降序排序。 ~~~ 如果要通過多個鍵星星排序,可以傳遞鍵的列表和以及對應的排序類型的列表。舉例來說,如下操作將返回restaurants集合中所有的文檔,并且先通過borough字段進行升序排序,然后在每個borough內,通過"address.zipcode"字段進行升序排序。 ~~~ import pymongo cursor = db.restaurants.find().sort([ ("borough", pymongo.ASCENDING), ("address.zipcode", pymongo.ASCENDING) ]) ~~~ > find返回的是可迭代對象 ## 刪除 刪除操作比較簡單,直接調用`remove()`方法指定刪除的條件即可,此時符合條件的所有數據均會被刪除。示例如下: ~~~ result = collection.remove({'name': 'Kevin'}) print(result) ~~~ 運行結果如下: ~~~ {'ok': 1, 'n': 1} ~~~ 另外,這里依然存在兩個新的推薦方法——`delete_one()`和`delete_many()`。示例如下: ~~~ result = collection.delete_one({'name': 'Kevin'}) print(result) print(result.deleted_count) result = collection.delete_many({'age': {'$lt': 25}}) print(result.deleted_count) ~~~ ## update `update_one()`方法和`update_many()`方法,用法更加嚴格,它們的第二個參數需要使用`$`類型操作符作為字典的鍵名,示例如下: ~~~ condition = {'name': 'Kevin'} student = collection.find_one(condition) student['age'] = 26 result = collection.update_one(condition, {'$set': student}) print(result) print(result.matched_count, result.modified_count) ~~~ ### update_one ``` condition = {'age': {'$gt': 20}} result = collection.update_one(condition, {'$inc': {'age': 1}}) print(result) print(result.matched_count, result.modified_count) ``` ### update_many ~~~ col.update({"_id": {"$gt": 10}}, {"$set": {"content": "aaaaaaa"}}, multi=True) 對應 db.bar.update({"_id": {"$gt": 10}}, {"$set": {"content": "xxx"}}, false,true) ~~~ ## 問題 ~~~ ubuntu14.04 解決安裝pymongo報錯 ImportError: cannot import name MongoClient apt-get install python-pymongo ~~~ [1]:https://www.cnblogs.com/zhouxuchen/p/5544227.html
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看