Django-基础篇

Django是一个开放源代码的Web应用框架,由Python语言编写。它遵循MVC(Model-View-Controller)的软件设计模式,使开发者能够以高效、可扩展和安全的方式构建Web应用程序。

Django具有以下特点和优势:

  1. 强大的功能:Django提供了许多内置的功能和工具,包括数据库访问、表单处理、用户认证、URL路由等。这些功能使开发者能够快速构建功能完善的Web应用程序。

  2. 高效的开发:Django使用Python语言编写,具有简洁优雅的语法和丰富的库。它提供了许多开发工具和自动化功能,使开发者能够以高效的方式快速开发和测试Web应用程序。

  3. 可扩展性:Django采用模块化的设计,可以方便地扩展和定制。开发者可以通过添加自定义插件、使用第三方库等方式来增强Django的功能。

  4. 安全性:Django内置了许多安全功能,如跨站点请求伪造(CSRF)防护、XSS(跨站点脚本)防护、点击劫持防护等。这些功能可以帮助开发者构建安全可靠的Web应用程序。

  5. 社区支持:Django拥有庞大的开发者社区,提供了大量的教程、文档、示例代码和问答平台。开发者可以从社区中获取支持和贡献自己的代码。

总的来说,Django是一个功能强大、灵活可扩展且安全可靠的Web应用框架,适用于构建各种规模的Web应用程序。它的简单和高效开发方式使得开发者能够专注于业务逻辑的实现,而不必过多关注底层技术细节。

1. 安装

pip install django

2. 创建django项目

安装好django后,django会提供一个创建项目的脚手架工具:django-admin.exe

使用django-admin.exe 创建的项目会默认创建, 项目文件夹以及一些初始化文件

创建项目:

方式一

  • 使用专业版pycharm创建django项目 (不常用,因为大部分入门学习python时使用的都是社区版的pycharm),所以这里不做操作的演示
  • 使用pycharm创建的django项目:
    • 会默认自带一个templates文件夹,可以删除不影响
    • 会在settings.py中的模板文件配置项添加 templates文件夹的匹配路径

方式二常用的创建django项目的方式

  • 终端:django-admin startproject 项目名称
    • 例如:django-admin startproject baseCode1
      • baseCode1        
        • baseCode1
          • __init__.py
          • asgi.py
          • settings.py
          • urls.py
          • wsgi.py
        • manage.py

推荐:方式二

3. 项目目录介绍

以下是使用命令行创建的django项目:django-admin startproject baseCode1

  • baseCode1        
    • baseCode1
      • __init__.py
      • asgi.py
      • settings.py
      • urls.py
      • wsgi.py
    • manage.py 

  • manage.py:一般不会去修改或添加代码到manage.py文件中
    • 作用:[项目的管理,项目的启动,创建app,数据管理]
    • 常用命令
      • manage.py runserver: 启动开发服务器,用于在本地运行开发环境中的Django项目
      • manage.py makemigrations:根据模型的变化创建迁移文件,用于数据库的更新
      • manage.py migrate:将数据库的迁移文件应用到数据库中,执行数据库的更新操作
      • createsuperuser:创建超级用户,用于管理Django项目的后台管理系统
      • collectstatic:将静态文件(如 CSS、JavaScript、图片等)收集到指定的静态文件夹中,便于部署
      • python manage.py --help  查看所有可用的命令和选项
  • asgi.py:一般不会去修改或添加代码到asgi.py文件中
    • 了解
      • asgi.py 是一个ASGI应用程序的入口点
        • ASGI是一种异步的Python Web服务器接口规范,它允许通过异步方式处理HTTP请求和响应。
        • 相比于传统的WSGI(Web Server Gateway Interface),ASGI提供了处理实时Web应用程序和长轮询请求的能力,以及与异步后端通信的能力
    • 作用:asgi.py文件用于配置ASGI服务器来运行Django应用程序
      • asgi.py中定义了一个 application 的变量,它是django应用程序的入口点
      • ASGI服务器将使用这个变量来启动和运行Django应用程序
      • 在asgi.py 文件中,可以配置ASGI服务器,定义中间件,设置静态文件路径等
    • 总结:
      • asgi.py文件的作用是配置ASGI服务器来运行Django应用程序,提供异步处理请求和响应的能力
  • wsgi.py 一般不会去修改或添加代码到wsgi.py文件中
    • 了解
      • wsgi.py文件是Django项目中的Web服务器网关接口(Web Server Gateway Interface)文件。
      • 它的作用是定义了一个WSGI应用程序对象,用于处理HTTP请求并将其发送到Django应用程序
    • 作用:
      • 用于Web服务器与Web应用程序之间的通信
      • wsgi.py文件负责加载Django项目的设置,并创建一个WSGI应用程序对象,该对象负责将接收到的HTTP请求传递给Django框架进行处理
      • 在部署Django应用程序时,通常会使用Web服务器(如Apache或Nginx)来处理HTTP请求,然后将请求传递给wsgi.py文件。wsgi.py文件将根据配置的路由规则将请求传递给相应的Django视图函数进行处理,并将处理结果返回给Web服务器,最终返回给客户端
    • 总结:
      • wsgi.py文件是Django应用程序与Web服务器之间的桥梁,负责将HTTP请求传递给Django应用程序进行处理
  • urls.py 
    • 作用:
      • 定义项目的URL路由
      • 用于指定那个视图函数应该被调用来响应特定的URL请求
    • 具体:
      • urls.py文件包含了一个URL模式列表,每个模式都定义了一个URL模式和一个对应的视图函数,当用户访问某个URL时,Django会根据`urls.py`中的定义来确定应该调用哪个视图函数来处理该请求
  • settings.py 文件是Django项目的配置文件,用于存储项目的所有配置信息。
    • - DATABASES:配置数据库连接信息。
    • - DEBUG:设置调试模式,用于开发阶段调试。
    • - ALLOWED_HOSTS:允许访问的主机列表,用于安全限制。
    • - INSTALLED_APPS:安装的Django应用程序列表。
    • - MIDDLEWARE:中间件的配置,用于在请求和响应处理之间进行处理。
    • - TEMPLATES:模板的设置,包括模板引擎、模板路径等。
    • - STATIC_URL和STATIC_ROOT:配置静态文件的URL和存储路径。
    • - MEDIA_URL和MEDIA_ROOT:配置媒体文件的URL和存储路径。
    • - LANGUAGE_CODE和TIME_ZONE:配置语言和时区
    • 通过编辑settings.py文件,可以根据项目的需求进行各种配置,例如设置数据库连接信息、调试模式、静态文件和媒体文件的处理方式等。这些配置信息将影响整个Django项目的运行行为和功能

关于项目目录介绍的简化总结:

  • baseCode1        项目的根目录,包含了Django项目的配置和其他相关文件
    • baseCode1        项目的Python包,包含了项目的配置,URL映射等信息
      • __init__.py  标识该目录为python包
      • settings.py  Django项目的配置文件,包括数据库连接,静态文件配置,应用程序配置等
      • urls.py URL映射配置文件,指定了URL与视图函数的对应关系
      • wsgi.py  用于部署项目到WSGI服务器,(例如:Apacha,Nginx)的入口文件
      • asgi.py  不常用

4. 创建应用程序

  1. 在Django中,startapp 命令用于创建一个新的应用程序
  2. 每个Django项目可以包含多个应用程序
  3. startapp 命令会自动生成一个包含必要文件和目录结构的新应用程序
  4. startapp 创建的应用会包含,模型,试图,模板,静态文件等。
  5. 通过创建应用程序,可以将不同的功能和模块分开管理,使得项目结构更加清晰和可维护

创建应用命令:

  • 命令:python manage.py startapp 应用程序名称
  • 例如:python manage.py startapp app

应用程序项目目录介绍:

  • app  Django应用程序的目录,包含了应用程序的模型、视图、URL映射等组件   
    • migrations
      • __init__.py  标识该目录为Python包
    • __init__.py  标识该目录为Python包
    • admin.py  管理后台配置文件,用于定义模型在管理后台中的显示和操作
    • apps.py  应用程序配置文件,用于配置应用程序的名称和其他信息
    • models.py  数据库模型定义文件,用于定义应用程序的数据模型
    • tests.py  测试文件,用于编写应用程序的测试用例
    • views.py  视图函数文件,用于处理URL请求,返回响应数据

5. Django初体验

本章目标:快速体验Django

经过以上文章一步步创建出来的当前项目目录结构:

  • baseCode1    项目的根目录,包含了Django项目的配置和其他相关文件
    • app  Django应用程序的目录,包含了应用程序的模型、视图、URL映射等组件   
      • migrations
        • __init__.py  标识该目录为Python包
      • __init__.py  标识该目录为Python包
      • admin.py  管理后台配置文件,用于定义模型在管理后台中的显示和操作
      • apps.py  应用程序配置文件,用于配置应用程序的名称和其他信息
      • models.py  数据库模型定义文件,用于定义应用程序的数据模型
      • tests.py  测试文件,用于编写应用程序的测试用例
      • views.py  视图函数文件,用于处理URL请求,返回响应数据
    • baseCode1        项目的Python包,包含了项目的配置,URL映射等信息
      • __init__.py  标识该目录为python包
      • settings.py  Django项目的配置文件,包括数据库连接,静态文件配置,应用程序配置等
      • urls.py URL映射配置文件,指定了URL与视图函数的对应关系
      • wsgi.py  用于部署项目到WSGI服务器,(例如:Apacha,Nginx)的入口文件
      • asgi.py  不常用

  1. 注册应用程序
    1. 在settings.py中注册app应用程序
    2. 找到 settings.py中的常量 INSTALLED_APPS
      INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles',]
    3. 在 INSTALLED_APPS 尾部添加注册app应用程序
      INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles',# 注册app应用'app.apps.AppConfig'
      ]
  2. 编写URL和视图函数对应关系

    1. 在urls.py中编写url和绑定视图函数

      from django.contrib import admin
      from django.urls import path
      from app.views import indexurlpatterns = [# 访问 http://127.0.0.1:8000/index 时 indexpath('index/', index),
      ]
      
    2. 在app应用程序中的views.py中编写视图函数

      from django.shortcuts import render, HttpResponse# Create your views here.def index(request):return HttpResponse("欢迎使用")
      
  3. 运行django项目:python manage.py runserver

访问:http://127.0.0.1:8000/index/

6. 模板和静态文件

6.1 render 函数

关于rendere详细语法:render(request, template_name, context=None, content_type=None, status=None, using=None)

  • 参数解释
    • request:包含当前请求的HttpRequest对象
    • template_name:模板的路径或名称
    • context:一个包含模板变量的字典,返回的字典数据在html中使用模板语法接收,默认为None
    • content_type:响应的内容类型,默认为None
    • status:响应的HTTP状态码,默认为None
    • using:使用的模板引擎名称,默认为None
  • 使用示例:
    from django.shortcuts import renderdef my_view(request):context = {'foo': 'bar'}return render(request, 'my_app/my_template.html', context=context)
    在上面的例子中,`render`函数接收一个名为`request`的HttpRequest对象,一个模板名为`my_app/my_template.html`的模板,并传递一个包含一个键值对`{'foo': 'bar'}`的上下文字典。最后,`render`函数将渲染得到的HTML作为响应返回给客户端。

6.2 templates模板

当用户访问 http://127.0.0.1:8000/hello 时,想返回的是一个html,那么需要怎么使用和配置呢?


方式一:

  1. 在根目录下创建 templates 目录
  2. 在settings.py中找到常量  TEMPLATES
  3. 在TEMPLATES中将 DIRS的值修改为:[os.path.join(BASE_DIR,"templates")]  当经过以上配置之后,默认会先在根目录中寻找templates,如果寻找不到才去 app应用程序中查找templates
    TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates',# 匹配templates目录'DIRS': [os.path.join(BASE_DIR,"templates")],'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},},
    ]
  4. 编写代码,当访问 /hello 时返回一个html模板

    1. 在urls.py中编写url和绑定视图函数

      from django.contrib import admin
      from django.urls import path
      from app.views import hellourlpatterns = [path('hello/', hello),
      ]
      
    2. 在app应用程序中找到views.py在里面编写一个 hello 视图函数

      from django.shortcuts import renderdef hello(request):# 在templates中寻找hello.htmlreturn render(request, "./hello.html")
      

方式二:

直接在app应用程序中创建templates,将html模板放到templates,但是前提是settings.py中的TEMPLATES的DIRS必须为[ ],不然匹配模板的时候会优先去匹配根路径的templates

建议:

  • 如果你的项目中,使用到的模板比较少,或app应用程序不使用到模板的话,建议使用方式一
  • 如果你的项目中,存在多个app应用,并且都每个app都有对应的独立的模板,建议使用方式二

6.3 静态文件

在app 应用程序目录下 创建static目录,用于存放静态文件

Django中html引入静态文件的语法

{% load static %}<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>hello world</title><link rel="stylesheet" href="{% static 'plugins/bootstrap.min.css' %}">
</head>
<body>
<img src="{% static "img/1.png" %}" alt=""><script src="{% static "js/jquery.js" %}"></script>
<script src="{% static "plugins/bootstrap.min.js" %}"></script>
</body>
</html>

6.3 模板语法

经过以上对templates的配置以及简单的使用,知道了怎么返回一个html,那么html中怎么接收到对应的数据内容呢?


app/views.py  视图函数

def test(request):# 在templates中寻找hello.htmldata = {"name": "小红","age": 10}return render(request, "test.html", context=data)

test.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<div>name: {{ name }}</div>
<div>age: {{ age }}</div>
</body>
</html>

关于Django模板语法的更多使用,请百度

7. 请求与响应

在Django中,请求和响应是Web应用程序与用户之间进行通信的基本元素。请求(request)是由用户发送给应用程序的,在请求中包含了用户的需求和相关数据。而响应(response)是应用程序对用户请求的处理结果,它包含了要返回给用户的数据和其他相关信息。

  • 请求(Request):
    • Django中的请求对象(request)封装了用户发送的HTTP请求的各种信息。它包含了请求的方法(GET、POST等)、请求的URL、请求头部信息、请求的参数等。请求对象还提供了一些方法来获取请求中的数据,例如GET方法获取GET请求参数,POST方法获取POST请求参数等。请求对象还可以包含用户的会话信息、用户认证信息等。
  • 响应(Response):
    • Django中的响应对象(response)封装了应用程序对请求的处理结果。可以通过响应对象来设置返回给用户的数据和其他相关信息。响应对象通常包含一个HTTP状态码,用来表示请求的处理结果,例如200表示成功,404表示未找到等。响应对象还可以设置响应头部信息,例如Content-Type、Cache-Control等。另外,响应对象还可以设置返回给用户的数据,可以是HTML页面、JSON数据、文件等。

在Django中,请求和响应的处理流程如下:
1. 用户发送HTTP请求到应用程序。
2. Django解析请求,生成请求对象,并将请求对象传递给相应的视图函数。
3. 视图函数对请求进行处理,并生成响应对象。
4. Django将响应对象发送回用户,完成请求-响应的过程。

总之,请求和响应是Django中实现用户与应用程序通信的基本机制,通过请求对象和响应对象,可以方便地处理用户的请求和返回相应的结果。

详细api请看:请求和响应对象 | Django 文档 | Django

8. Orm

  • 依赖安装:pip install mysqlclient
  • Django中内置提供了Orm框架
    • 功能:
      • 创建,修改,删除数据库中的表
      • 操作表中的数据
    • 注:不能创建数据库

8.1 手动创建数据

手动创建数据库:create database testdata

8.2 连接数据

在settings.py中修改配置,找到常量:DATABASE

默认是连接sqllite数据库的

DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': BASE_DIR / 'db.sqlite3',}
}

修改为连接mysql数据库

DATABASES = {'default': {# 默认是sqlite3数据库# 'ENGINE': 'django.db.backends.sqlite3',# 'NAME': BASE_DIR / 'db.sqlite3',# 修改为mysql数据库连接'ENGINE': "django.db.backends.mysql",# 数据库名称(已创建的数据库名称)'NAME': 'testdata',# 数据库用户名'USER': 'root',# 数据库密码'PASSWORD': 'root','HOST': 'localhost','PORT': '3306',}
}

8.3 创建数据

上面说到了Django中内置了Orm,但是数据库需要自己手动创建,剩下的表操作就需要在models.py中编写数据模型,然后自动生成表结构

在应用程序的models.py中编写数据模型,生成表结构:

  1. models.py 创建表模型
    from django.db import modelsclass BaseTest(models.Model):name = models.CharField(max_length=32)password = models.CharField(max_length=64)age = models.IntegerField()
    
  2. 执行命令,生成表结构:

    1. python manage.py makemigrations 数据库迁移文件的命令

    2. python manage.py migrate 迁移到数据库中的命令

  3. 其他的数据表是默认的,可以无视。

Orm的所有操作都是在app应用程序下的models.py中,所以需要先将app应用程序注册到settings.py文件中,执行命令才能对生效为对应的数据表

如果你遇到了以下的错误:

  • django.db.utils.NotSupportedError: MySQL 8 or later is required (found 5.7.26)
    • 解决方案:Django提示mysql版本过低:django.db.utils.NotSupportedError: MySQL 8 or later is required (found 5.7.26)._django.db.utils.notsupportederror: mysql 8.0.11 or-CSDN博客

8.4 增删改查

models.py

from django.db import modelsclass BaseTest(models.Model):name = models.CharField(max_length=32)password = models.CharField(max_length=64)age = models.IntegerField()

增删改查操作,views.py 

from django.http import HttpResponse
from .models import BaseTestdef orm_curd(request):# 插入数据# BaseTest.objects.create(name="小红", password="12332123", age=10)# BaseTest.objects.create(name="小明", password="dwadaw", age=10)# BaseTest.objects.create(name="小方", password="12332dawd123", age=10)# 删除数据# 删除 id为3的数据# BaseTest.objects.filter(id=3).delete()# 删除表中所有数据# BaseTest.objects.all().delete()# 获取所有数据# querySetList = BaseTest.objects.all()# for obj in querySetList:#     print(obj.id, obj.name, obj.password)# 获取 id=1 的数据# 如果取单条数据就使用first()直接获取,不需要遍历# row_obj = BaseTest.objects.filter(id=1).first()# print(row_obj.id, row_obj.name, row_obj.password)# 更新数据# 将password字段值都更新为 6666# BaseTest.objects.all().update(password='6666')# 查询id为1的数据更新字段password为12321312BaseTest.objects.filter(id=1).update(password='12321312')return HttpResponse("成功")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/830380.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面试笔记——线程池

线程池的核心参数&#xff08;原理&#xff09; public ThreadPoolExecutor(int corePoolSize,int maximumPoolSize,long keepAliveTime,TimeUnit unit,BlockingQueue<Runnable> workQueue,ThreadFactory threadFactory,RejectedExecutionHandler handler)corePoolSize …

利用word2vec包将中文转变为词向量

代码展示&#xff1a; import jieba import re import json import logging import sys import gensim.models as word2vec from gensim.models.word2vec import LineSentence, loggerpattern u[\\s\\d,.<>/?:;\\"[\\]{}()\\|~!\t"#$%^&*\\-_a-zA-Z&…

C#创建obj三维模型文件

介绍 使用开源库创建obj三维模型文件。 开源库地址&#xff1a;https://github.com/JeremyAnsel/JeremyAnsel.Media.WavefrontObj 相关API地址&#xff1a;https://jeremyansel.github.io/JeremyAnsel.Media.WavefrontObj/api/JeremyAnsel.Media.WavefrontObj.ObjFile.html …

【docker】开放Docker端口

【docker 】 安装docker&#xff08;centOS7&#xff09;-CSDN博客 【docker】常用命令-CSDN博客 【docker】centos7配置docker镜像加速_docker仓库加速地址-CSDN博客 【docker】Hello World-CSDN博客 【docker 】Compose 使用介绍_docker compose 使用-CSDN博客 【docker…

linux(ubuntu18.04.2) Qt编译 MySQL(8.0以上版本)链接库 Qt版本 5.12.12及以上 包含Mysql动态库缺失问题

整理这篇文档的意义在于&#xff1a;自己走了很多弯路&#xff0c;淋过雨所以想为别人撑伞&#xff0c;也方便回顾&#xff0c;仅供参考 一、搭建开发环境&#xff1a; 虚拟机&#xff08;ubuntu-20.04.6-desktop-amd64&#xff09;&#xff1a;Mysql数据库 8.0.36Workbench …

tidb离线本地安装及mysql迁移到tidb

一、背景&#xff08;tidb8.0社区版&#xff09; 信创背景下不多说好吧&#xff0c;从资料上查tidb和OceanBase“兼容”&#xff08;这个词有意思&#xff09;的比较好。 其实对比了很多数据库&#xff0c;有些是提供云服务的&#xff0c;有些“不像”mysql&#xff0c;综合考虑…

【如何使用SSH密钥验证提升服务器安全性及操作效率】(优雅的连接到自己的linux服务器)

文章目录 一、理论基础&#xff08;不喜欢这部分的可直接看具体操作&#xff09;1.为什么要看本文&#xff08;为了zhuangbility&#xff09;2.为什么要用密钥验证&#xff08;更安全不易被攻破&#xff09;3.密码验证与密钥验证的区别 二、具体操作1.生成密钥对1.1抉择&#x…

计算机复试项目:SpringCloud实战高并发微服务架构设计

秒杀购物商城--环境搭建 秒杀购物商城基础服务组件--详细介绍 秒杀购物商城基础服务--权限中心 秒杀购物商城业务服务--收货地址 秒杀购物商城业务服务--秒杀活动服务 秒杀购物商城--购物车的功能设计及分析 秒杀购物商城基础服务-用户中心 秒杀购物商城业务服务--商品中…

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之九 简单进行嘴巴检测并添加特效的功能实现

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之九 简单进行嘴巴检测并添加特效的功能实现 目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单人脸检测/识别实战案例 之九 简单进行嘴巴检测并添加特效的功能实现 一、简单介绍 二、简单…

ArcGIS小技巧—模型构建器快速提取河网

上篇文章介绍的基于DEM的河网提取&#xff0c;需要使用多个工具&#xff0c;整体操作比较繁琐&#xff0c;在日常工作中&#xff0c;使用Arcgis提供的模型构建器可以帮助我们将多个工具整合在一起&#xff0c;在面对大量数据批量处理时&#xff0c;可以大大提高工作效率 利用模…

数字化wms仓库管理软件,实现企业仓储信息共享与智慧运行-亿发

在经济飞速发展的今天&#xff0c;企业面临着客户需求多样化、质量和交期要求提高以及激烈的市场竞争等挑战。在这样的背景下&#xff0c;许多企业开始考虑采用数字化仓储WMS系统来解决这些问题。 数字化仓储WMS系统通过打造高效、规范的仓库管理体系&#xff0c;实现了对产品…

爱普生晶振在物联网LoRa通讯中的应用

LoRa 是LPWAN通信技术中的一种&#xff0c;是美国Semtech公司采用和推广的一种基于扩频技术的超远距离无线传输方案。这一方案改变了以往关于传输距离与功耗的折衷考虑方式&#xff0c;为用户提供一种简单的能实现远距离、长电池寿命、大容量的系统&#xff0c;进而扩展传感网络…

神经网络高效训练:优化GPU受限环境下的大规模CSV数据处理指南

最近训练模型,需要加载wifi sci data 数据量特别大,直接干爆内存,训练也特别慢,快放弃了!随后冷静下来,然后靠着多年的经验,来进行层层优化,随诞生了这篇博客。 背景介绍 机器学习模型的训练通常需要大量的数据,尤其是对于深度神经网络模型。然而,当数据集非常庞大时…

网络之路29:三层链路聚合

正文共&#xff1a;1666 字 17 图&#xff0c;预估阅读时间&#xff1a;3 分钟 目录 网络之路第一章&#xff1a;Windows系统中的网络 0、序言 1、Windows系统中的网络1.1、桌面中的网卡1.2、命令行中的网卡1.3、路由表1.4、家用路由器 网络之路第二章&#xff1a;认识企业设备…

新质生产力实践,我用chatgpt开发网站

是的&#xff0c;我用chatgpt开发了一个网站&#xff0c;很轻松。 我之前一点不懂前端&#xff0c;也没有网站开发的代码基础&#xff0c;纯正的0基础。 从0开始到最后成品上线&#xff0c;时间总计起来大致一共花了2-3周的时间。 初始想法我是想给我公司开发一个网站&#…

【弱监督语义分割】AllSpark:从transformer中的未标记特征重生标记特征,用于半监督语义分割

AllSpark: Reborn Labeled Features from Unlabeled in Transformer for Semi-Supervised Semantic Segmentation 摘要&#xff1a; 目前最先进的方法是用真实标签训练标注数据&#xff0c;用伪标签训练未标注数据。然而&#xff0c;这两个训练流程是分开的&#xff0c;这就使…

Android数据恢复:如何在手机上恢复丢失的文件和照片

我们都有 我们错误地从手机中删除重要内容的时刻。确实如此 不一定是我们的错。其他人可以对您的手机数据执行此操作 有意或无意。这在某个时间点发生在我们所有人身上。 但是&#xff0c;今天市场上有各种各样的软件可以 帮助恢复已删除的文件。这些类型的软件被归类为数据恢复…

Pandas数据可视化 - Matplotlib、Seaborn、Pandas Plot、Plotly

可视化工具介绍 让我们一起探讨Matplotlib、Seaborn、Pandas Plot和Plotly这四个数据可视化库的优缺点以及各自的适用场景。这有助于你根据不同的需求选择合适的工具。 1. Matplotlib 优点: 功能强大&#xff1a;几乎可以用于绘制任何静态、动画和交互式图表。高度可定制&a…

用OpenCV先去除边框线,以提升OCR准确率

在OpenCV的魔力下&#xff0c;我们如魔法师般巧妙地抹去表格的边框线&#xff0c;让文字如诗如画地跃然纸上。 首先&#xff0c;我们挥动魔杖&#xff0c;将五彩斑斓的图像转化为单一的灰度世界&#xff0c;如同将一幅绚丽的油画化为水墨画&#xff0c;通过cv2.cvtColor()函数的…

寝室快修|基于SprinBoot+vue的贵工程寝室快修小程序(源码+数据库+文档)

贵工程寝室快修目录 目录 基于SprinBootvue的贵工程寝室快修小程序 一、前言 二、系统设计 三、系统功能设计 1学生信息管理 2 在线报修管理 3公告信息管理 4论坛信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&a…