首页 科技周边 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)

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