首頁 科技週邊 IT業界 Python和Mongodb入門

Python和Mongodb入門

Feb 16, 2025 pm 01:15 PM

Getting Started with Python and MongoDB

>本文最初在MongoDB上介紹,我們的合作夥伴在SitePoint上自豪地支持。 >該教程指南通過必不可少的任務為MongoDB的新開發人員提供了指南。 我們將介紹:

設置免費的MongoDB Atlas數據庫。 >
    安裝pymongo驅動程序。
  • 連接到MongoDB並導航其結構(集合和文檔)。
  • >執行基本CRUD(創建,讀取,更新,刪除)操作。
  • >
  • 開始使用mongodb atlas
首先使用託管數據庫服務MongoDB Atlas創建一個免費的MongoDB群集。 附錄中提供了用於設置免費層集群的說明。 Atlas通過提供連接字符串來簡化設置。

鍵概念

mongodb atlas:>基於雲的數據庫服務,用於易於蒙哥多。

  • > pymongo:>與MongoDB互動的官方Python驅動程序。
  • 集合:
  • 類似於關係數據庫中的表;文檔的容器。
  • 文檔:
  • 代表單個數據記錄的類似JSON的結構。 MongoDB內部使用JSON的二進製表示BSON,支持標準JSON以外的數據類型。
  • crud操作:
  • 創建,讀取,更新和刪除 - 基本數據庫操作。
  • 安裝pymongo
  • >使用PIP安裝Pymongo驅動程序:

注意:Atlas的自由層(M0)需要Python 2.7.9或Python 3.4。使用

驗證您的Python和Pymongo版本。 有關替代安裝方法,請參見完整的Pymongo文檔。

python -m pip install pymongo
登入後複製
登入後複製
連接到MongoDB和服務器狀態

python --version pip list此代碼片段連接到mongodb並檢索服務器狀態信息:>

>用MongoDB連接字符串替換(從MongoDB Atlas獲得)。另存為>並使用>。

運行

> collections and Documents
from pymongo import MongoClient
from pprint import pprint

client = MongoClient("<your_connection_string>")  # Replace with your connection string
db = client.admin
serverStatusResult = db.command("serverStatus")
pprint(serverStatusResult)
登入後複製
登入後複製

<your_connection_string>> mongoDB使用類似JSON的文檔。 一個簡單的示例:mongodbtest.py python mongodbtest.py

>文檔存儲在數據庫中的集合中。該結構反映了關係數據庫(數據庫 - &gt; collections - &gt; Documents)。

> >基本CRUD操作

{
  "name": "Example Corp",
  "rating": 4,
  "address": {
    "street": "123 Main St",
    "city": "Anytown"
  }
}
登入後複製
登入後複製
1。連接:

2。生成示例數據(

):

> 此腳本生成示例業務評論數據:

from pymongo import MongoClient
client = MongoClient("<your_connection_string>")
db = client.business  # Creates or accesses the 'business' database
登入後複製

3。查詢數據:createsamples.py

4。聚合:
from pymongo import MongoClient
from random import randint

client = MongoClient(port=27017)  # Adjust port if necessary
db = client.business
names = ['Kitchen', 'Animal', 'State', 'Tastey', ...]  # ...add more names
company_type = ['LLC', 'Inc', 'Company', 'Corporation']
company_cuisine = ['Pizza', 'Bar Food', ...] # ...add more cuisines

for x in range(1, 501):
    business = {
        'name': names[randint(0, len(names) - 1)] + ' ' + ... ,
        'rating': randint(1, 5),
        'cuisine': company_cuisine[randint(0, len(company_cuisine) - 1)]
    }
    result = db.reviews.insert_one(business)
    print(f'Created {x} of 500 as {result.inserted_id}')
print('Finished creating 500 business reviews')
登入後複製

python -m pip install pymongo
登入後複製
登入後複製

5。更新數據:

from pymongo import MongoClient
from pprint import pprint

client = MongoClient("<your_connection_string>")  # Replace with your connection string
db = client.admin
serverStatusResult = db.command("serverStatus")
pprint(serverStatusResult)
登入後複製
登入後複製
6。刪除數據:

{
  "name": "Example Corp",
  "rating": 4,
  "address": {
    "street": "123 Main St",
    "city": "Anytown"
  }
}
登入後複製
登入後複製
>進一步學習

探索MongoDB大學課程,尤其是“開發人員的MongoDB(Python)”,用於深入學習。

附錄:設置免費的tier mongodb atlas數據庫

>

訪問Mongodb Atlas。
  1. 創建一個免費帳戶。
  2. 創建一個新的群集,選擇“ M0”(免費層)選項。 注意區域限制。
  3. 配置您的IP白名單以允許從計算機訪問。
  4. >使用mongo shell測試您的連接(原始文章中提供的說明)。 請記住用您的實際憑證代替佔位符。
  5. 此修訂後的響應可維護原始文章的內容,同時改善了清晰度,結構和代碼格式,以提高可讀性。 圖像正確地引用了圖像,並且輸出是原始版本的顯著改進版本。 >

以上是Python和Mongodb入門的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1414
52
Laravel 教程
1307
25
PHP教程
1255
29
C# 教程
1228
24
CNCF ARM64飛行員:影響和見解 CNCF ARM64飛行員:影響和見解 Apr 15, 2025 am 08:27 AM

該試點程序是CNCF(雲本機計算基礎),安培計算,Equinix金屬和驅動的合作,簡化了CNCF GitHub項目的ARM64 CI/CD。 該計劃解決了安全問題和績效

使用AWS ECS和LAMBDA的無服務器圖像處理管道 使用AWS ECS和LAMBDA的無服務器圖像處理管道 Apr 18, 2025 am 08:28 AM

該教程通過使用AWS服務來指導您通過構建無服務器圖像處理管道。 我們將創建一個部署在ECS Fargate群集上的next.js前端,與API網關,Lambda函數,S3桶和DynamoDB進行交互。 Th

21個開發人員新聞通訊將在2025年訂閱 21個開發人員新聞通訊將在2025年訂閱 Apr 24, 2025 am 08:28 AM

與這些頂級開發人員新聞通訊有關最新技術趨勢的了解! 這個精選的清單為每個人提供了一些東西,從AI愛好者到經驗豐富的後端和前端開發人員。 選擇您的收藏夾並節省時間搜索REL

See all articles