Django 入门实战:从环境搭建到构建你的第一个 Web 应用
Django 入门实战:从环境搭建到构建你的第一个 Web 应用
恭喜你选择 Django 作为你学习 Python Web 开发的起点!Django 是一个强大、成熟且功能齐全的框架,非常适合构建中大型的 Web 应用程序。本篇将通过一个简单的例子,带你走完 Django 开发的核心流程。
我们将构建一个非常简单的应用:一个显示项目列表的页面,这些项目数据存储在数据库中,并且可以通过 Django 自带的管理后台进行管理。
我们将要完成的步骤:
- 搭建开发环境 (Python, pip, 虚拟环境, Django)。
- 创建一个 Django 项目。
- 创建一个 Django 应用。
- 定义一个简单的视图 (View)。
- 配置 URL 路由 (URL Dispatcher)。
- 使用模板 (Template) 渲染 HTML。
- 定义模型 (Model),与数据库交互。
- 使用 Django 自带的管理后台管理数据。
- 在页面上显示数据库中的数据。
开始吧!
Part 1: 环境搭建
首先,确保你的电脑已经安装了 Python 和 pip。建议使用 Python 3.7 或更高版本。
-
创建和激活虚拟环境:
使用虚拟环境是 Python 开发的最佳实践,它可以隔离不同项目之间的依赖,避免冲突。
打开命令提示符 (Command Prompt) 或 PowerShell。
-
创建一个新的虚拟环境(例如命名为
Bashmyproject_venv):python -m venv myproject_venv这会在当前目录下创建一个名为
myproject_venv的文件夹。 -
激活虚拟环境:
- Windows 命令提示符 (Command Prompt): Bash
myproject_venv\Scripts\activate.bat - Windows PowerShell: PowerShell
如果遇到执行策略问题,可以尝试运行myproject_venv\Scripts\Activate.ps1Set-ExecutionPolicy RemoteSigned -Scope CurrentUser并同意。
激活成功后,你的命令行提示符前面会显示虚拟环境的名称,例如
(myproject_venv) C:\YourProject>。 - Windows 命令提示符 (Command Prompt): Bash
-
-
在虚拟环境中安装 Django:
确保虚拟环境已激活,然后使用 pip 安装 Django。
Bashpip install django等待安装完成。
-
验证 Django 安装:
可以运行以下命令检查 Django 是否成功安装以及版本号。
Bashdjango-admin --version如果显示版本号,说明安装成功。
Part 2: 创建一个 Django 项目
Django 项目是整个 Web 应用的容器,包含配置和设置。
-
在项目目录下创建 Django 项目:
在你的项目目录(例如,你刚刚创建虚拟环境的那个目录)下,运行以下命令:
Bashdjango-admin startproject myproject .django-admin是 Django 的命令行工具。startproject是一个命令,用于创建一个新项目。myproject是你给项目取的名称。- 后面的
.表示在当前目录创建项目文件和目录,而不是在当前目录下再创建一个myproject子目录。
成功运行后,你的项目目录下会生成以下文件和目录结构:
. ├── manage.py └── myproject├── __init__.py├── asgi.py├── settings.py├── urls.py└── wsgi.pymanage.py: 一个命令行工具,用于与项目进行各种交互,如运行服务器、执行数据库迁移等。myproject/: 项目的配置目录。settings.py: 项目的主要配置文件。urls.py: 项目的 URL 路由配置文件。wsgi.py,asgi.py: 用于部署的服务器入口文件。
-
运行开发服务器:
进入包含 manage.py 文件的项目根目录,运行以下命令:
Bashpython manage.py runserver服务器会启动,默认运行在
http://127.0.0.1:8000/。打开你的浏览器,访问
http://127.0.0.1:8000/。如果看到一个带有火箭图标的“The install worked successfully! Congratulations!”页面,说明你的 Django 项目已经成功创建并运行起来了!在命令行窗口中,按下
Ctrl + C可以停止开发服务器。
Part 3: 创建一个应用 (App)
Django 鼓励将项目功能拆分成独立、可复用的“应用”(App)。每个 App 通常负责一个特定的功能模块。
-
在项目根目录下创建应用:
确保你仍在包含 manage.py 的项目根目录下,运行以下命令:
Bashpython manage.py startapp myappstartapp是用于创建一个新应用的命令。myapp是你给应用取的名称。
成功运行后,你的项目目录下会新增一个
myapp目录:. ├── manage.py ├── myenv # 你的虚拟环境目录 ├── myproject # 项目配置目录 └── myapp # 新增的应用目录├── migrations # 数据库迁移文件目录├── __init__.py├── admin.py # 应用的管理后台配置├── apps.py # 应用的配置├── models.py # 应用的模型定义├── tests.py # 应用的测试└── views.py # 应用的视图定义 -
将应用添加到项目设置:
新创建的应用需要添加到项目的配置文件 settings.py 中,让 Django 知道这个应用的存在。
- 打开
myproject/settings.py文件。 - 找到
INSTALLED_APPS列表。 - 在列表中添加你的应用名称
'myapp'。
# myproject/settings.pyINSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','myapp', # <--- 在这里添加你的应用名称 ]# ... 文件其他内容 - 打开
Part 4: 定义第一个视图 (View)
视图负责接收 Web 请求并返回响应。我们先创建一个简单的视图,只返回一段文本。
-
打开应用的
views.py文件:myapp/views.py。 -
编写一个简单的函数式视图 (FBV):
Python# myapp/views.pyfrom django.http import HttpResponse # 需要导入 HttpResponse 类def index(request):# 这个函数接收一个 HttpRequest 对象作为参数 (命名为 request 是约定)# 它返回一个 HttpResponse 对象,其中包含了要发送给浏览器的文本内容return HttpResponse("Hello, Django!")
Part 5: 配置 URL 路由 (URL Routing)
我们需要告诉 Django,当用户访问某个特定的 URL 时,应该由哪个视图来处理。这通过配置 URL 路由实现。通常,一个应用有自己的 urls.py 文件,然后项目的根 urls.py 包含应用的 URL。
-
在应用目录中创建 urls.py 文件:
在 myapp 目录下创建一个新的 Python 文件 urls.py。
-
编辑应用的 urls.py:
定义一个 urlpatterns 列表,其中包含 URL 模式与视图函数的对应关系。
Python# myapp/urls.pyfrom django.urls import path # 需要导入 path 函数 from . import views # 从当前应用目录导入 views.py# urlpatterns 是一个列表,定义了 URL 模式 urlpatterns = [# path(route, view, name=None)# route: 匹配的 URL 路径 (这里是空字符串 '', 表示匹配应用 URL 的根路径)# view: 处理该请求的视图函数 (views.index)# name: 给这个 URL 起一个名字,方便在模板或代码中引用 (可选但推荐)path('', views.index, name='index'),# 你可以在这里添加更多 path() 来定义其他 URL# path('about/', views.about, name='about'), ] -
编辑项目的根 urls.py:
打开 myproject/urls.py 文件,包含 myapp 应用的 URL 配置。
Python# myproject/urls.pyfrom django.contrib import admin from django.urls import path, include # 需要导入 include 函数urlpatterns = [# 这是 Django 内置管理后台的 URLpath('admin/', admin.site.urls),# 使用 include() 将 myapp 应用的 URL 配置包含进来# 当用户访问以 'myapp/' 开头的 URL 时,Django 会将剩余的 URL 部分传递给 myapp.urls 去处理path('myapp/', include('myapp.urls')),# 你也可以直接在项目根 urls.py 中定义简单的 URL 模式# path('', views.home, name='home'), # 如果你的 home 视图在项目根目录的 views.py 中 ] -
测试第一个视图和 URL:
确保你在项目根目录(manage.py 所在目录),运行开发服务器:
Bashpython manage.py runserver打开浏览器,访问
http://127.0.0.1:8000/myapp/。你应该能看到页面上显示“Hello, Django!”。这表明你成功地将一个 URL 映射到了一个视图,并返回了响应。
Part 6: 使用模板 (Template)
直接在视图中返回 HTML 字符串不适合复杂的页面。Django 使用模板来分离视图逻辑和页面展示。
-
创建模板目录和模板文件:
按照 Django 的约定,模板文件通常放在应用的 templates 目录下的一个与应用同名的子目录中。
- 在
myapp目录下创建templates目录:myapp/templates/。 - 在
templates目录下创建myapp子目录:myapp/templates/myapp/。 - 在
myapp/templates/myapp/目录下创建一个新的 HTML 文件,例如index.html。
- 在
-
编辑模板文件 (myapp/templates/myapp/index.html):
编写一些 HTML 代码,并使用 Django 模板语言 (DTL) 显示一个变量。
HTML<!DOCTYPE html> <html> <head><title>我的第一个 Django 模板</title> </head> <body>{# 这是一个模板注释 #}<h1>{{ greeting }}</h1> {# 使用 {{ 变量名 }} 显示从视图传递的变量 #}<p>这是一个使用模板渲染的页面。</p> </body> </html> -
修改视图以使用模板:
修改 myapp/views.py 中的 index 视图,使用 render() 快捷函数来加载和渲染模板。render() 函数会自动查找 templates 目录。
Python# myapp/views.py# from django.http import HttpResponse # 不再直接返回 HttpResponse from django.shortcuts import render # 需要导入 render 函数def index(request):# 准备传递给模板的数据 (上下文)context = {'greeting': 'Hello from Template Context!', # 定义一个变量 'greeting''other_variable': '...' # 可以传递更多变量}# 使用 render 函数加载并渲染模板# render(request, template_name, context=None)# request: HttpRequest 对象# template_name: 模板文件相对于某个 templates 目录的路径 (如 'myapp/index.html')# context: 传递给模板的数据字典return render(request, 'myapp/index.html', context) -
测试使用模板的视图:
确保服务器正在运行,再次访问 http://127.0.0.1:8000/myapp/。你应该能看到一个标准的 HTML 页面,其中 H1 标题显示着“Hello from Template Context!”。这表明你成功地将数据从视图传递到了模板并进行了渲染。
Part 7: 使用模型 (Model) 与数据库
Django 的 ORM 让你用 Python 类定义数据结构,然后自动映射到数据库。
-
数据库设置:
Django 默认使用 SQLite 数据库,配置在 settings.py 的 DATABASES 字典中。对于入门而言,默认设置即可,无需安装额外数据库软件。
-
定义第一个模型:
打开应用的 models.py 文件 (myapp/models.py),定义一个简单的 Item 模型。
Python# myapp/models.pyfrom django.db import models # 需要导入 models 模块class Item(models.Model): # 继承自 models.Model# 定义模型字段,对应数据库表的列name = models.CharField(max_length=100) # 字符串字段,最大长度 100created_at = models.DateTimeField(auto_now_add=True) # 日期时间字段,创建时自动设置当前时间# __str__ 方法定义了模型对象在被打印或在管理后台显示时的字符串表示def __str__(self):return self.name# 你可以在这里定义其他字段,如 models.IntegerField(), models.TextField(), models.BooleanField(), models.ForeignKey() 等 -
创建数据库迁移 (Migrations):
模型定义完成后,需要告诉 Django 根据模型的变化创建数据库迁移文件。
- 确保你在项目根目录(
manage.py所在目录),并且虚拟环境已激活。 - 运行命令: Bash
python manage.py makemigrations myapp # 指定应用名称 - Django 会检测到你在
myapp/models.py中定义了Item模型,并在myapp/migrations/目录下生成一个 Python 文件(例如0001_initial.py),记录了创建Item表的步骤。
- 确保你在项目根目录(
-
应用数据库迁移:
生成迁移文件后,需要将其应用到数据库,创建实际的数据库表。
- 确保你在项目根目录,虚拟环境已激活。
- 运行命令: Bash
python manage.py migrate - Django 会执行所有未应用的迁移,包括你的应用和 Django 内置应用(如用户认证、管理后台)的迁移,创建所需的数据库表。如果使用 SQLite,你会在项目根目录看到一个
db.sqlite3文件被创建或更新。
Part 8: 使用 Django 自带的管理后台管理数据
Django 的杀手级功能之一是自动化的管理后台,可以让你方便地查看和管理数据库中的数据。
-
创建超级用户 (Superuser):
你需要创建一个超级用户账号来登录管理后台。
- 确保你在项目根目录,虚拟环境已激活。
- 运行命令: Bash
python manage.py createsuperuser - 按照提示输入用户名、邮箱(可选)和密码。密码输入时不会显示字符,输完按回车即可。
-
注册模型到管理后台:
默认情况下,你的自定义模型不会显示在管理后台。你需要显式地注册它们。
- 打开应用的
admin.py文件 (myapp/admin.py)。 - 导入你的模型,并使用
admin.site.register()函数注册。
# myapp/admin.pyfrom django.contrib import admin from .models import Item # 导入你的 Item 模型# 在管理后台注册 Item 模型 admin.site.register(Item)# 你也可以在这里注册其他模型 # from .models import AnotherModel # admin.site.register(AnotherModel) - 打开应用的
-
访问管理后台并添加数据:
- 确保开发服务器正在运行 (
python manage.py runserver)。 - 打开浏览器,访问
http://127.0.0.1:8000/admin/。 - 使用你刚刚创建的超级用户账号登录。
- 登录成功后,你应该能在侧边栏看到你的应用名称(myapp)以及下面的
Items。 - 点击
Items,然后点击右上角的“添加 Item”按钮。 - 输入一些 Item 数据(只需要输入 Name 字段,created_at 会自动生成),点击“保存”。添加几个 Item。
- 确保开发服务器正在运行 (
Part 9: 在页面上显示数据库中的数据
现在,我们回到前面创建的页面,修改视图和模板,从数据库中获取 Item 数据并显示出来。
-
修改视图,从数据库获取数据:
打开 myapp/views.py 文件,修改 index 视图,使用 ORM 查询 Item 模型的数据。
Python# myapp/views.pyfrom django.shortcuts import render from .models import Item # 需要导入你的 Item 模型类def index(request):# 使用 ORM 从数据库获取所有的 Item 对象# Item.objects 是一个管理器,提供数据库查询接口# .all() 方法获取所有的 Item 对象,返回一个 QuerySet (类似列表)items_list = Item.objects.all()# 准备传递给模板的数据context = {'greeting': '我的项目列表','items': items_list # 将获取到的 Item 列表传递给模板,变量名为 'items'}# 渲染模板return render(request, 'myapp/index.html', context) -
修改模板,显示获取到的数据:
打开 myapp/templates/myapp/index.html 文件,使用 Django 模板语言循环遍历 items 列表并显示每个 Item 的信息。
HTML<!DOCTYPE html> <html> <head><title>我的项目列表</title> </head> <body><h1>{{ greeting }}</h1><h2>项目列表:</h2>{% if items %} {# 检查 items 列表是否存在且非空 #}<ul>{% for item in items %} {# 模板标签:循环遍历 items 列表,每次循环将当前元素赋给 item #}<li>{# 显示当前 item 对象的属性 #}{{ item.name }} (创建时间: {{ item.created_at }})</li>{% endfor %}</ul>{% else %}{# 如果 items 列表为空,显示此段落 #}<p>目前还没有项目数据。</p>{% endif %}</body> </html> -
最终测试:
确保开发服务器正在运行,访问 http://127.0.0.1:8000/myapp/。现在,你应该能看到页面上显示着“我的项目列表”,并且下方列出了你在管理后台添加的所有 Item 数据!
Part 9: 总结回顾
恭喜你!你已经完成了你的第一个 Django Web 应用的入门开发。在这个过程中,你接触并使用了 Django 的核心组件和开发流程:
- 虚拟环境和 pip: 搭建和管理项目环境。
django-admin和manage.py: 创建项目和应用,运行服务器,执行管理任务。- 项目和应用结构: 理解 Django 的模块化组织方式。
- 视图 (View): 编写处理请求的 Python 函数。
- URL 路由 (URLconf): 配置 URL 与视图的映射。
- 模板 (Template): 使用 Django 模板语言渲染 HTML 页面。
- 模型 (Model) 和 ORM: 使用 Python 类定义数据结构,并通过 ORM 与数据库交互。
- 数据库迁移 (Migrations): 管理数据库 schema 变化。
- 管理后台 (Admin Site): 利用自动生成的界面管理数据。
这只是 Django 的冰山一角,但它涵盖了构建任何 Django 应用都必需的核心概念和步骤。接下来,你可以深入学习 Django 的更多功能,例如:
- 基于类的视图 (CBV): 更强大的视图组织方式。
- 表单 (Forms): 处理用户输入和验证。
- 用户认证和授权: 构建用户系统。
- 静态文件和媒体文件: 处理 CSS、JS、图片等资源。
- 测试: 编写自动化测试用例。
- 部署: 将应用部署到生产环境。
希望这个入门实战指南能帮助你顺利迈进 Django 的大门!继续探索和实践吧!
相关文章:
Django 入门实战:从环境搭建到构建你的第一个 Web 应用
Django 入门实战:从环境搭建到构建你的第一个 Web 应用 恭喜你选择 Django 作为你学习 Python Web 开发的起点!Django 是一个强大、成熟且功能齐全的框架,非常适合构建中大型的 Web 应用程序。本篇将通过一个简单的例子,带你走完…...
ROS2---时间戳对齐
一、ROS2时间系统架构 时间模型 仿真时间(Simulation Time):由/clock话题驱动,适用于离线仿真与调试。真实时间(Real Time):基于系统硬件时钟,支持PTP协议(IEEE 1588&…...
Sublime Text相关设置
一直知道Sublime Text的自由度很高,但是之前使用从未更改过配置,有一天突然想改改设置试一下,感觉打开了新大陆,特此记录一下 设置默认语法 单击 Tools→Developer→New Snippet 弹出一个窗口,把下面这段代码粘贴进去…...
微信小程序 tabbar底部导航栏
官方文档:https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html#tabBar 一、常规菜单格式 在app.json 文件中配置,其他关键点详见官方文档,后续更新不规则图标的写法...
【Maven】项目管理工具
Maven:一个项目管理工具 前言 传统项目管理存在的问题: 依赖管理混乱 需要自己去网上搜 jar 包,找对版本很痛苦(还容易找错)某个库依赖另一个库(传递依赖),你得自己挨个找齐不小心…...
多线程事务?拿捏!
场景:有一批1万或者10万数据,插入数据库,怎么做 事务中进行批量提交 publList<List<OrderPo>> partition Lists.partition(list, 450);StopWatch stopWatch new StopWatch();stopWatch.start();// 顺序插入for (List<OrderPo> sub…...
Unity InputSystem触摸屏问题
最近把Unity打包后的windows软件放到windows触摸屏一体机上测试,发现部分屏幕触摸点击不了按钮,测试了其他应用程序都正常。 这个一体机是这样的,一个电脑机箱,外接一个可以触摸的显示屏,然后UGUI的按钮就间歇性点不了…...
Linux Awk 深度解析:10个生产级自动化与云原生场景
看图猜诗,你有任何想法都可以在评论区留言哦~ 摘要 Awk 作为 Linux 文本处理三剑客中的“数据工程师”,凭借字段分割、模式匹配和数学运算三位一体的能力,成为处理结构化文本(日志、CSV、配置文件)的终极工具。本文聚…...
免费版还是专业版?Dynadot 域名邮箱服务选择指南
关于Dynadot Dynadot是通过ICANN认证的域名注册商,自2002年成立以来,服务于全球108个国家和地区的客户,为数以万计的客户提供简洁,优惠,安全的域名注册以及管理服务。 Dynadot平台操作教程索引(包括域名邮…...
旋转磁体产生的场-对导航姿态的影响
pitch、yaw、roll是描述物体在空间中旋转的术语,通常用于计算机图形学或航空航天领域中。这些术语描述了物体绕不同轴旋转的方式: Pitch(俯仰):绕横轴旋转,使物体向前或向后倾斜。俯仰角度通常用来描述物体…...
动态哈希映射深度指南:从基础到高阶实现与优化
哈希表是计算机科学中最高效的数据结构之一,而动态哈希映射通过智能扩容机制,在实时系统中展现出极强的适应性。本文将深入探讨其实现细节,结合主流框架源码解析,并给出可落地的性能优化方案。 一、动态哈希的数学本质 1. 哈希函…...
Day11(回溯法)——LeetCode79.单词搜索
1 前言 今天主要刷了一道热题榜中回溯法的题,现在的计划是先刷热题榜专题吧,感觉还是这样见效比较快。因此本文主要介绍LeetCode79。 2 LeetCode79.单词搜索(LeetCode79) OK题目描述及相关示例如下: 2.1 题目分析解决及优化 感觉回溯的方…...
高精度并行2D圆弧拟合(C++)
依赖库 Eigen3 GLM Ceres-2.1.0 glog-0.6.0 gflag-2.2.2 基本思路 Step 1: RANSAC找到圆弧,保留inliers点; Step 2:使用ceres非线性优化的方法,拟合inliers点,得到圆心和半径; -------…...
Linux端口占用问题排查与解决
在 Linux 中,当遇到端口被占用的情况(如你遇到的 8000 端口),可以通过以下步骤查看并处理: 1. 查看占用端口的进程 使用 netstat 或 ss 命令(推荐 ss,更现代): sudo netstat -tulnp | grep :8000 # 或 sudo ss -tulnp | grep :8000输出示例: tcp 0 0 0.0.0.0:…...
PostgreSQL 分区表——范围分区SQL实践
PostgreSQL 分区表——范围分区SQL实践 1、环境准备1-1、新增原始表1-2、执行脚本新增2400w行1-3、创建pg分区表-分区键为创建时间1-4、创建24年所有分区1-5、设置默认分区(兜底用)1-6、迁移数据1-7、创建分区表索引 2、SQL增删改查测试2-1、查询速度对比…...
4.3 工具调用与外部系统集成:API调用、MCP(模型上下文协议)、A2A、数据库查询与信息检索的实现
工具调用与外部系统集成是智能代理(Agent)系统实现复杂功能和企业级应用的核心支柱。Agent通过API调用访问实时服务,**模型上下文协议(Model Context Protocol, MCP)**标准化数据交互,Agent-to-Agent&#…...
展锐Android13电池问题导致系统的崩溃,(2)电池电压计算和电池曲线
先看is_bat_low函数的代码: #ifndef LOW_BAT_VOL //# define LOW_BAT_VOL 3400 #define LOW_BAT_VOL 3672 #endif #ifndef LOW_BAT_VOL_CHG //# define LOW_BAT_VOL_CHG 3500 #define LOW_BAT_VOL_CHG 3719 #endifint is_bat_low(void) {int32_t vbat_vol;uin…...
SpringCloud 微服务复习笔记
文章目录 微服务概述单体架构微服务架构 微服务拆分微服务拆分原则拆分实战第一步:创建一个新工程第二步:创建对应模块第三步:引入依赖第四步:被配置文件拷贝过来第五步:把对应的东西全部拷过来第六步:创建…...
【Python爬虫基础篇】--4.Selenium入门详细教程
先解释:Selenium:n.硒;硒元素 目录 1.Selenium--简介 2.Selenium--原理 3.Selenium--环境搭建 4.Selenium--简单案例 5.Selenium--定位方式 6.Selenium--常用方法 6.1.控制操作 6.2.鼠标操作 6.3.键盘操作 6.4.获取断言信息 6.5.…...
【Python爬虫详解】第四篇:使用解析库提取网页数据——XPath
在前一篇文章中,我们介绍了如何使用BeautifulSoup解析库从HTML中提取数据。本篇文章将介绍另一个强大的解析工具:XPath。XPath是一种在XML文档中查找信息的语言,同样适用于HTML文档。它的语法简洁而强大,特别适合处理结构复杂的网…...
二分小专题
P1102 A-B 数对 P1102 A-B 数对 暴力枚举还是很好做的,直接上双层循环OK 二分思路:查找边界情况,找出最大下标和最小下标,两者相减1即为答案所求 废话不多说,上代码 //暴力O(n^3) 72pts // #include<bits/stdc.h> // usin…...
Langchain检索YouTube字幕
创建一个简单搜索引擎,将用户原始问题传递该搜索系统 本文重点:获取保存文档——保存向量数据库——加载向量数据库 专注于youtube的字幕,利用youtube的公开接口,获取元数据 pip install youtube-transscript-api pytube 初始化 …...
【Linux网络】应用层自定义协议与序列化及Socket模拟封装
📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…...
客户案例:西范优选通过日事清实现流程与项目管理的优化
近几年来,新零售行业返璞归真,从线上销售重返线下发展,满足消费者更加多元化的需求,国内家居集合店如井喷式崛起。为在激烈的市场竞争中立于不败之地,西范优选专注于加强管理能力、优化协作效率的“内功修炼”…...
LabVIEW实现Voronoi图绘制功能
该 LabVIEW 虚拟仪器(VI)借助 MathScript 节点,实现基于手机信号塔位置计算 Voronoi 图的功能。通过操作演示,能直观展示 Voronoi 图在空间划分上的应用。 各部分功能详细说明 随机地形创建部分 功能:根据 “Maximum a…...
【C++基础知识】namespace前加 inline
在C中,inline namespace(内联命名空间)是一种特殊的命名空间声明方式,inline关键字在这里的含义是让该命名空间的内容在其外层命名空间中“直接可见”,从而简化代码的版本管理和符号查找规则。以下是详细解释ÿ…...
离线部署kubernetes
麒麟Linux服务器 AMR架构 🧰 离线部署 Kubernetes v1.25.9(麒麟系统 Docker) 一、验证Docker部署状态 检查Docker服务运行状态 systemctl status docker 预期输出应显示 Active: active (running),表明服务已启动18。 …...
【AI提示词】私人教练
提示说明 以专业且细致的方式帮助客户实现健康与健身目标,提升整体生活质量。 提示词 # Role: 私人教练## Profile - language: 中文 - description: 以专业且细致的方式帮助客户实现健康与健身目标,提升整体生活质量 - background: 具备丰富的健身经…...
爬虫学习——获取动态网页信息
对于静态网页可以直接研究html网页代码实现内容获取,对于动态网页绝大多数都是页面内容是通过JavaScript脚本动态生成(也就是json数据格式),而不是静态的,故需要使用一些新方法对其进行内容获取。凡是通过静态方法获取不到的内容,…...
第54讲:总结与前沿展望——农业智能化的未来趋势与研究方向
目录 一、本板块内容回顾:人工智能助力农业的多元化应用 ✅ 精准农业与AI ✅ 农业金融与AI ✅ AI与农业政策 ✅ 农业物联网与AI 二、前沿趋势与研究方向:迈向智能、可持续农业的未来 1. AIGC(生成式AI)在农业中的应用 2. 数字孪生农业:虚拟与现实的无缝对接 3. A…...
