python 自动化教程
文章目录
- 前言
- 整数变量
- 字符串变量
- 列表变量
- 算术操作
- 比较操作
- 逻辑操作
- if语句
- for循环遍历列表
- while循环
- 定义函数
- 调用函数
- 导入模块
- 使用模块中的函数
- 启动Chrome浏览器
- 打开网页
- 定位元素并输入内容
- 提交表单
- 关闭浏览器
- 发送GET请求获取网页内容
- 使用BeautifulSoup解析HTML
- 提取网页标题
- 读取CSV文件
- 数据预览
- 数据清洗 - 删除包含缺失值的行
- 数据分析 - 统计描述
- 创建新目录
- 复制文件
- 移动文件
- 读取销售数据Excel文件
- 数据清洗 - 假设去除重复行
- 数据分析 - 计算每个产品的总销售额
- 生成新报表
- 邮件配置
- 添加邮件正文
- 添加附件
- 发送邮件
- 等待页面特定元素加载完成
- 配置日志记录
- 下载必要数据
- 模拟鼠标点击
- 模拟键盘输入
前言
在当今快节奏的工作环境中,重复性任务耗时费力,而 Python 自动化技术宛如神奇助手,能极大提升效率。这份教程将带你开启 Python 自动化学习之旅,从基础语法、常用自动化库,到办公、爬虫等实战场景,助力你快速掌握这一高效技能,轻松应对工作挑战。
一、Python 自动化基础
(一)Python 基础语法回顾
变量与数据类型
Python 拥有多种数据类型,如整数(int)、浮点数(float)、字符串(str)、列表(list)、元组(tuple)、字典(dict)等。变量声明无需指定类型,直接赋值即可。例如:
整数变量
age = 25
字符串变量
name = "John"
列表变量
fruits = [“apple”, “banana”, “cherry”]
操作符
包括算术操作符(如+、-、*、/、%)、比较操作符(如==、!=、>、<、>=、<=)、逻辑操作符(and、or、not)等。
算术操作
result = 5 + 3
比较操作
is_greater = 10 > 5
逻辑操作
is_valid = (age > 18) and (name!= “”)
条件语句与循环语句
条件语句(if、elif、else)用于根据条件执行不同代码块;循环语句(for、while)可实现代码重复执行。
if语句
if age >= 18:
print(“成年人”)
else:
print(“未成年人”)
for循环遍历列表
for fruit in fruits:
print(fruit)
while循环
count = 0
while count < 5:
print(count)
count += 1
函数与模块
函数通过def关键字定义,提升代码复用性;模块是包含 Python 代码的文件,使用import导入。
定义函数
def add_numbers(a, b):
return a + b
调用函数
sum_result = add_numbers(3, 4)
导入模块
import math
使用模块中的函数
sqrt_result = math.sqrt(16)
(二)Python 自动化常用库
Selenium - Web 浏览器自动化
Selenium 可模拟用户在浏览器中的操作,如点击、输入、滚动等,常用于 Web 测试和爬虫开发。
安装:通过pip install selenium安装。需下载对应浏览器的 WebDriver,如 ChromeDriver。
基本操作示例:
from selenium import webdriver
from selenium.webdriver.common.by import By
启动Chrome浏览器
driver = webdriver.Chrome()
打开网页
driver.get(“https://www.example.com”)
定位元素并输入内容
element = driver.find_element(By.NAME, “q”)
element.send_keys(“Python自动化”)
提交表单
element.submit()
关闭浏览器
driver.quit()
Requests 与 BeautifulSoup - 网络爬虫
Requests库用于发送 HTTP 请求获取网页内容,BeautifulSoup库用于解析和提取网页数据。
安装:pip install requests beautifulsoup4。
示例代码:
import requests
from bs4 import BeautifulSoup
发送GET请求获取网页内容
response = requests.get(“https://www.example.com”)
使用BeautifulSoup解析HTML
soup = BeautifulSoup(response.text, ‘html.parser’)
提取网页标题
title = soup.find(‘title’).text
print(title)
Pandas - 数据处理与分析
Pandas 在数据处理和分析方面功能强大,可读写文件、清洗数据、分析数据等。
安装:pip install pandas。
示例:
import pandas as pd
读取CSV文件
data = pd.read_csv(‘data.csv’)
数据预览
print(data.head())
数据清洗 - 删除包含缺失值的行
cleaned_data = data.dropna()
数据分析 - 统计描述
summary = cleaned_data.describe()
print(summary)
OS 与 Shutil - 文件和目录操作
os模块用于操作系统交互,shutil模块用于文件和目录操作。
安装:这两个模块是 Python 标准库,无需额外安装。
示例:
import os
import shutil
创建新目录
os.mkdir(‘new_directory’)
复制文件
shutil.copy(‘example.txt’, ‘new_directory/example.txt’)
移动文件
shutil.move(‘new_directory/example.txt’, ‘another_directory/’)
二、Python 自动化实战应用
(一)自动化办公
文件处理
批量重命名文件:假设要将某文件夹下所有图片文件(.jpg格式)重命名,在文件名前加上 “image_” 前缀。
import os
folder_path = ‘your_folder_path’
for filename in os.listdir(folder_path):
if filename.endswith(’.jpg’):
new_name = ‘image_’ + filename
os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_name))
文件分类整理:将不同类型文件分类存放到对应文件夹。
import os
import shutil
folder_path = ‘your_folder_path’
file_types = {
‘images’: [’.jpg’, ‘.png’, ‘.jpeg’],
‘documents’: [‘.doc’, ‘.docx’, ‘.pdf’],
‘videos’: [‘.mp4’, ‘.avi’, ‘.mkv’]
}
for filename in os.listdir(folder_path):
file_extension = os.path.splitext(filename)[1]
for category, extensions in file_types.items():
if file_extension in extensions:
category_folder = os.path.join(folder_path, category)
if not os.path.exists(category_folder):
os.makedirs(category_folder)
shutil.move(os.path.join(folder_path, filename), os.path.join(category_folder, filename))
数据分析与报表生成
以处理销售数据为例,从 Excel 文件读取数据,分析后生成新报表。
import pandas as pd
读取销售数据Excel文件
sales_data = pd.read_excel(‘sales_data.xlsx’)
数据清洗 - 假设去除重复行
unique_sales_data = sales_data.drop_duplicates()
数据分析 - 计算每个产品的总销售额
product_sales = unique_sales_data.groupby(‘Product’)[‘Sales’].sum()
生成新报表
product_sales.to_excel(‘product_sales_report.xlsx’, index=True)
邮件发送
使用smtplib和email库发送自动化邮件,如发送包含销售报表的邮件。
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
邮件配置
sender_email = "your_email@example.com"
receiver_email = "recipient_email@example.com"
password = "your_email_password"
message = MIMEMultipart()
message[‘Subject’] = "销售报表"
message[‘From’] = sender_email
message[‘To’] = receiver_email
添加邮件正文
body = "这是本月的销售报表,请查收。"
message.attach(MIMEText(body, ‘plain’))
添加附件
with open(‘product_sales_report.xlsx’, ‘rb’) as file:
part = MIMEApplication(file.read(), Name=‘product_sales_report.xlsx’)
part[‘Content-Disposition’] = f’attachment; filename=“product_sales_report.xlsx”'
message.attach(part)
发送邮件
with smtplib.SMTP(‘smtp.example.com’, 587) as server:
server.starttls()
server.login(sender_email, password)
server.sendmail(sender_email, receiver_email, message.as_string())
(二)Web 爬虫自动化
简单网页数据抓取
抓取某新闻网站最新新闻标题和链接。
import requests
from bs4 import BeautifulSoup
url = “https://news.example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, ‘html.parser’)
news_items = soup.find_all(‘div’, class_=‘news-item’)
for item in news_items:
title = item.find(‘h2’).text
link = item.find(‘a’)[‘href’]
print(f"标题: {title}, 链接: {link}”)
动态网页数据抓取(处理 JavaScript 渲染)
对于使用 JavaScript 动态加载数据的网页,借助 Selenium 配合webdriverwait等待页面加载完成后再抓取。
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome()
driver.get(“https://dynamic_news.example.com”)
等待页面特定元素加载完成
wait = WebDriverWait(driver, 10)
news_items = wait.until(EC.presence_of_all_elements_located((By.CLASS_NAME, ‘news-item’)))
for item in news_items:
title = item.find_element(By.TAG_NAME, ‘h2’).text
link = item.find_element(By.TAG_NAME, ‘a’).get_attribute(‘href’)
print(f"标题: {title}, 链接: {link}“)
driver.quit()
三、Python 自动化项目优化与拓展
(一)异常处理与日志记录
异常处理
在自动化脚本中,合理处理异常可避免脚本因错误中断。使用try - except语句捕获异常。
import requests
try:
response = requests.get(“https://nonexistent.example.com”)
response.raise_for_status() # 检查请求是否成功,失败则抛出异常
except requests.RequestException as e:
print(f"请求出错: {e}”)
日志记录
通过logging模块记录脚本运行信息,方便排查问题。
import logging
配置日志记录
logging.basicConfig(filename=‘automation.log’, level=logging.INFO,
format=‘%(asctime)s - %(levelname)s - %(message)s’)
try:
# 自动化脚本代码
result = 10 / 0 # 模拟错误
except ZeroDivisionError as e:
logging.error(f"发生错误: {e}", exc_info=True)
else:
logging.info(“脚本执行成功”)
(二)数据驱动测试与持续集成
数据驱动测试
数据驱动测试将测试用例参数化,从外部文件读取数据运行测试。以 Pandas 读取 Excel 数据进行测试为例:
import pandas as pd
import unittest
def add_numbers(a, b):
return a + b
class DataDrivenTest(unittest.TestCase):
def test_addition(self):
data = pd.read_excel(‘test_data.xlsx’)
for index, row in data.iterrows():
num1 = row[‘Number1’]
num2 = row[‘Number2’]
expected_result = row[‘ExpectedResult’]
result = add_numbers(num1, num2)
self.assertEqual(result, expected_result)
if name == ‘main’:
unittest.main()
持续集成(CI)
利用工具(如 Jenkins、Travis CI 等)自动构建、测试和部署 Python 自动化项目。以 Travis CI 为例,在项目根目录创建.travis.yml文件配置构建和测试流程。
language: python
python:
- "3.11"
install: - pip install -r requirements.txt
script: - python -m unittest discover
此配置指定使用 Python 3.11,安装项目依赖(requirements.txt中列出),并运行单元测试。
(三)与其他技术结合拓展自动化能力
与人工智能(AI)结合
如使用 Python 调用自然语言处理(NLP)库(如 NLTK、SpaCy)对文本数据进行自动化处理和分析。
import nltk
from nltk.sentiment import SentimentIntensityAnalyzer
下载必要数据
nltk.download(‘vader_lexicon’)
sia = SentimentIntensityAnalyzer()
text = "这部电影太棒了!"
sentiment = sia.polarity_scores(text)
print(sentiment)
与机器人流程自动化(RPA)结合
通过pyautogui库实现跨系统操作自动化,模拟鼠标和键盘动作。
import pyautogui
模拟鼠标点击
pyautogui.click(100, 100)
模拟键盘输入
pyautogui.typewrite(“Hello, World!”)
相关文章:
python 自动化教程
文章目录 前言整数变量字符串变量列表变量算术操作比较操作逻辑操作if语句for循环遍历列表while循环定义函数调用函数导入模块使用模块中的函数启动Chrome浏览器打开网页定位元素并输入内容提交表单关闭浏览器发送GET请求获取网页内容使…...
C++学习:六个月从基础到就业——C++11/14:列表初始化
C学习:六个月从基础到就业——C11/14:列表初始化 本文是我C学习之旅系列的第四十三篇技术文章,也是第三阶段"现代C特性"的第五篇,主要介绍C11/14中的列表初始化特性。查看完整系列目录了解更多内容。 引言 在C11之前&a…...
城市静音革命:当垃圾桶遇上缓冲器
缓冲垃圾桶的核心原理是通过机械或液压装置实现垃圾桶盖的缓慢闭合,包含以下技术要点:能量吸收机制液压式:通过活塞挤压油液产生阻尼力,将动能转化为热能耗散弹簧式:利用弹性变形储存和释放能量,配合摩…...
数据库的规范化设计方法---3种范式
第一范式(1NF):确保表中的每个字段都是不可分割的基本数据项。 第二范式(2NF):在满足1NF的基础上,确保非主属性完全依赖于主键。 第三范式(3NF):在满足2NF的基…...
p024基于Django的网上购物系统的设计与实现
开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 管理员登录 管理员功能界面 用户管理 商品类型管理 商品信息管理 系统管理 订单管理…...
C++跨平台开发:挑战与应对策略
C跨平台开发:挑战与应对策略 在如今设备多样、操作系统碎片化的开发环境中,跨平台能力已成为衡量软件生命力与团队工程效率的重要指标。C 作为高性能系统级语言,在游戏引擎、嵌入式系统、实时渲染等领域依旧坚挺。然而,实现“一次…...
Kotlin 作用域函数(let、run、with、apply、also)对比
Kotlin 的 作用域函数(Scope Functions) 是简化代码逻辑的重要工具,它们通过临时作用域为对象提供更简洁的操作方式。以下是 let、run、with、apply、also 的对比分析: 一、核心区别对比表 函数上下文对象引用返回值是否扩展函数…...
JavaScript性能优化实战(11):前沿技术在性能优化中的应用
引言 随着Web应用复杂度和性能需求不断提高,传统的JavaScript优化技术已经无法满足某些高性能计算场景的需求。本文将深入探讨前沿Web技术如何突破JavaScript的性能瓶颈,为Web应用提供接近原生应用的性能体验。从底层计算到图形渲染,从并发处理到动画优化,我们将通过实际案…...
数据结构【AVL树】
AVL树 1.AVL树1.AVL的概念2.平衡因子 2.AVl树的实现2.1AVL树的结构2.2AVL树的插入2.3 旋转2.3.1 旋转的原则 1.AVL树 1.AVL的概念 AVL树可以是一个空树。 它的左右子树都是AVL树,且左右子树的高度差的绝对值不超过1。AVL树是一颗高度平衡搜索二叉树,通…...
电动调节V型球阀:行业应用与材质选择全解析
电动调节V型球阀:行业应用与材质选择全解析 作为工业自动化控制中的关键设备,电动调节V型球阀凭借其独特的结构设计与高性能调节能力,在石油、化工、造纸等高要求领域广泛应用。本文将从核心功能、行业应用场景、材质选择要点等方面深入解析…...
页面上如何显示特殊字符、Unicode字符?
在前端开发中,显示特殊字符通常涉及到HTML实体(HTML Entities)或 Unicode 字符的使用。以下是一些常见的方法来处理特殊字符的显示: 1、HTML实体: HTML为一些常见的特殊字符提供了预定义的实体。例如,要显…...
桌面端进程通信
以下是关于 Electron 桌面端进程通信的基本知识点总结: 一、Electron 进程模型基础 1. 进程类型与职责 进程类型职责权限主进程(Main)创建窗口、系统级操作、IPC中枢完全Node.js访问权限渲染进程(Renderer)展示Web内容、UI交互默认受限(可配置开启Node.js)预加载脚本(Prelo…...
vue2 切换主题色以及单页面好使方法
今天要新增一个页面要根据不同公司切换不同页面主题色,一点一点来,怎么快速更改 el-pagination 分页组件主题色。 <el-pagination :page-size"pageSize" :pager-count"pageCount"layout"sizes, prev, pager, next, jumper,…...
三层固定实体架构:高效实现图上的检索增强生成(RAG)
知识图谱正在成为跨各个领域组织和检索信息的强大工具。它们越来越多地与机器学习和自然语言处理技术相结合,以增强信息检索和推理能力。在本文中,我介绍了一种用于构建知识图谱的三层架构,结合了固定本体实体、文档片段和提取的命名实体。通过利用嵌入和余弦相似度,这种方…...
pnpm 与 npm 的核心区别
以下是 pnpm 与 npm 的核心区别总结,涵盖依赖管理、性能、安全性等关键维度: 1. 依赖存储机制 • npm: 每个项目的依赖独立存储于 node_modules,即使多个项目使用相同版本的包,也会重复下载和存储。例如,1…...
NVMe简介6之PCIe事务层
PCIe的事务层连接了PCIe设备核心与PCIe链路,这里主要基于PCIe事务层进行分析。事务层采用TLP传输事务,完整的TLP由TLPPrefix、TLP头、Payload和TLP Digest组成。TLP头是TLP中最关键的部分,一般由三个或四个双字的长度,其格式定义如…...
【C++详解】string各种接口如何使用保姆级攻略
文章目录 一、string介绍二、string使用构造函数析构函数赋值运算符重载string的遍历修改方法1、下标[]2、迭代器3、范围for 迭代器使用详解const迭代器反向迭代器(reverse) Capacity(容量相关)size/lengthmax_sizecapacityclear/emptyshrink_to_fit(缩容)reserve(扩…...
深入理解 requestIdleCallback:浏览器空闲时段的性能优化利器
requestIdleCallback 核心作用 requestIdleCallback 是浏览器提供的 API,用于将非关键任务延迟到浏览器空闲时段执行,避免阻塞用户交互、动画等关键任务,从而提升页面性能体验。 基本语法 const handle window.requestIdleCallback(callb…...
QML鼠标事件和按键事件
1 鼠标事件 1.1 MouseArea组件 在QML中,鼠标事件主要通过MouseArea元素处理,它是用于检测和响应鼠标交互的核心组件。常用属性 cursorShape: 光标形状acceptedButtons: 设置响应鼠标的哪些按键事件,默认为鼠标左键 Qt.LeftButton࿱…...
Animaster:一次由 CodeBuddy 主导的 CSS 动画编辑器诞生记
我正在参加CodeBuddy「首席试玩官」内容创作大赛,本文所使用的 CodeBuddy 免费下载链接:腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴 起心动念:我想要一个动画编辑器 那天我突然想到,如果能有一个简单好用的 CSS 动画编辑…...
Git 版本控制系统入门指南
Git 版本控制系统入门指南 一、Git 基础概念 1. 什么是 Git? Git 是一个分布式版本控制系统,它可以: 跟踪文件变化协调多人协作管理代码版本支持离线工作保证数据完整性 2. Git 的特点 分布式架构快速分支操作完整历史记录数据完整性保…...
GitHub 趋势日报 (2025年05月16日)
本日报由 TrendForge 系统生成 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日整体趋势 Top 10 排名项目名称项目描述今日获星总星数语言1TapXWorld/ChinaTextbookPDF教材。⭐ 4792⭐ 19814Roff2xming521/WeClone&…...
C/C++之内存管理
1. 内存分布 我们定义的变量对于电脑来说也叫数据,同时电脑也会把这些数据分为不同的类型,分别是局部数据,静态数据,全局数据,常量数据和动态申请数据。 在 C 中,各类数据存储位置如下: • 局…...
GitHub文档加载器设计与实现
文章结构: 目录 GitHub文档加载器设计与实现 引言 架构设计 主要组件 核心功能 文档加载流程 加载单个文件 加载目录内容 错误处理与健壮性 分支回退策略 文件类型和大小限制 安全性考虑 SSL证书验证 使用示例 基本使用 测试环境配置 最佳实践 结…...
历史数据分析——中证白酒
简介 中证白酒指数选取涉及白酒生产业务相关上市公司证券作为指数样本,为投资者提供更多样化的投资标的。 估值 中证白酒总体的PB是5.26,在过去十年间位于23.76%,属于较低的水平。 中证白酒总体的PE是20.13,在过去十年间,位于14.24%,属于较低的水平。 从估值的角度似…...
PHP8.0版本导出excel失败
环境:fastadmin框架,不是原版接手的项目。PHP8.0,mysql5.7. code // 创建一个新的 Spreadsheet 对象 $spreadsheet new Spreadsheet(); $worksheet $spreadsheet->getActiveSheet();// 设置表头 $worksheet->setCellValue(A1, ID); $worksheet…...
Seata源码—5.全局事务的创建与返回处理二
大纲 1.Seata开启分布式事务的流程总结 2.Seata生成全局事务ID的雪花算法源码 3.生成xid以及对全局事务会话进行持久化的源码 4.全局事务会话数据持久化的实现源码 5.Seata Server创建全局事务与返回xid的源码 6.Client获取Server的响应与处理的源码 7.Seata与Dubbo整合…...
mac-M系列芯片安装软件报错:***已损坏,无法打开。推出磁盘问题
因为你安装的软件在Intel 或arm芯片的mac上没有签名导致。 首先打开任何来源操作 在系统设置中配置,如下图: 2. 然后打开终端,输入: sudo spctl --master-disable然后输入电脑锁屏密码 打开了任何来源,还遇到已损坏…...
端到端自动驾驶系统实战指南:从Comma.ai架构到PyTorch部署
引言:端到端自动驾驶的技术革命 在自动驾驶技术演进历程中,端到端(End-to-End)架构正引领新一轮技术革命。不同于传统分模块处理感知、规划、控制的方案,端到端系统通过深度神经网络直接建立传感器原始数据到车辆控制…...
MoveIt Setup Assistant 在导入urdf文件的时候报错
在使用MoveIt Setup Assistant导入urdf文件的时候(load a urdf or collada robot model),找到urdf文件后MoveIt Setup Assistant闪退并报错: Warning: Ignoring XDG_SESSION_TYPEwayland on Gnome. Use QT_QPA_PLATFORMwayland to run on Wayland anyway…...
uniapp +vue +springboot多商家订餐系统
uniapp vue springboot多商家订餐系统,这个系统我整理调试的多商家,多用户的,多端小程序订餐系统,主要包含了uniapp小程序端,管理后台页面vue端,后台功能接口Springboot端,源码齐全,…...
docker迅雷自定义端口号、登录用户名密码
在NAS上部署迅雷,确实会带来很大的方便。但是目前很多教程都是讲怎么部署docker迅雷,鲜有将自定义配置的方法。这里讲一下怎么部署,并重点讲一下支持的自定义参数。 一、部署docker 在其他教程中,都是介绍的如下命令,…...
联想笔记本黑屏了,排线出问题还是静电
以下引用 联想电脑屏幕不亮,电源键和键盘灯均正常的解决办法(超简单)_拯救者屏幕不亮,键盘有电-CSDN博客 昨天正常关机后,今天一早来工位打开电脑,美美开始玩手机。 一会之后抬头屏幕是黑的,还以为自动息…...
uniapp -- uCharts 仪表盘刻度显示 0.9999999 这样的值问题处理。
文章目录 🍉问题🍉解决方案🍉问题 在仪表盘上,23.8变成了 23.799999999999997 🍉解决方案 formatter格式化问题 1:在 config-ucharts.js 或 config-echarts.js 配置对应的 formatter 方法 formatter: {yAxisDemo1: function (...
为 Spring Boot 应用程序构建 CI/CD 流水线
为 Spring Boot 应用程序创建构建/部署流水线涉及多个步骤,而 Jenkins 可以作为强大的工具来自动化这些流程。在本教程中,我们将指导您为托管在 GitHub 上的 Spring Boot 应用程序设置流水线,使用 Jenkins 构建该应用程序,并将其部…...
数值分析填空题速通
填空题速通 文章目录 填空题速通误差与误差传播均差插值与误差范数、赋范线性空间与内积、内积空间范数代数精度数值微分积分误差迭代方程与收敛阶微分方程数值解法的迭代公式与阶 误差与误差传播 例 设 a 1.414 a 1.414 a1.414, b − 0.576 b -0.576 b−0.57…...
day016-系统负载压力测试-磁盘管理
文章目录 1. 系统负载2. 模拟系统高负载2.1 模拟cpu负载2.2 模拟IO负载 3. 磁盘接口分类4. 思维导图 1. 系统负载 系统负载是衡量系统繁忙程度的指标负载值接近或超过cpu核心总数表示系统负载高负载高常见原因:1.占用cpu过多导致2.占用磁盘IO过多导致(I…...
DeepSeek指令微调与强化学习对齐:从SFT到RLHF
后训练微调的重要性 预训练使大模型获得丰富的语言和知识表达能力,但其输出往往与用户意图和安全性需求不完全匹配。业内普遍采用三阶段训练流程:预训练 → 监督微调(SFT)→ 人类偏好对齐(RLHF)。预训练阶段模型在大规模语料上学习语言规律;监督微调利用人工标注的数据…...
安全性(一):加密算法总结
一、加密算法分类总览 加密类型关键特性代表算法主要用途对称加密加解密使用同一个密钥DES、3DES、AES、SM4数据加密传输、存储非对称加密公钥加密,私钥解密(或反向)RSA、DSA、ECC、SM2密钥交换、数字签名、身份认证哈希算法不可逆摘要MD5、…...
DeepSeek 赋能军事:重塑现代战争形态的科技密码
目录 一、引言:AI 浪潮下的军事变革与 DeepSeek 崛起二、DeepSeek 技术原理与特性剖析2.1 核心技术架构2.2 独特优势 三、DeepSeek 在军事侦察中的应用3.1 海量数据快速处理3.2 精准目标识别追踪3.3 预测潜在威胁 四、DeepSeek 在军事指挥决策中的应用4.1 战场态势实…...
我司助力高校打造「智慧创新AI学习中心」
为推动AI教育融合跨领域应用,东吴大学于2025年4月举行「智慧创新AI学习中心」揭牌仪式,并宣布正式启动AI特色课程与教学空间建置计画。此次建置由我司协助整体教室空间与设备规划,导入最新NVIDIA GeForce RTX 50系列桌上型电脑,并…...
AI赋能把“杂多集合”转化为“理想集合”的数学建模与认知升级
AI赋能把“杂多集合”转化为“理想集合”的数学建模与认知升级 一、核心概念定义 杂多集合(Chaotic Set) 定义:元素间关系模糊、结构无序的集合 数学表达:C{x∣x∈X,P(x)},其中 P(x) 是模糊隶属函数 实例…...
NVC++ 介绍与使用指南
文章目录 NVC 介绍与使用指南NVC 简介安装 NVC基本使用编译纯 C 程序编译 CUDA C 程序 关键编译选项示例代码使用标准并行算法 (STDPAR)混合 CUDA 和 C 优势与限制优势限制 调试与优化 NVC 介绍与使用指南 NVC 是 NVIDIA 提供的基于 LLVM 的 C 编译器,专为 GPU 加速…...
Redis 事务与管道:原理、区别与应用实践
在现代分布式系统开发中,Redis 作为高性能的内存数据库,其事务处理和管道技术是开发者必须掌握的核心知识点。本文将深入探讨 Redis 事务和管道的实现原理、使用场景、性能差异以及最佳实践,帮助开发者根据实际需求选择合适的技术方案。 一、…...
Git 多人协作
目录 情景一 情景二 合并分支 情景一 目标:远程 master 分支下的 file.txt 文件新增代码 "aaa","bbb"。 实现:由开发者1新增 "aaa" ,开发者2新增 bbb。 条件:在一个分支下合作完成。 针对以上情景我们要注意…...
Unity 人物模型学习笔记
一、关于模型的检查 拿到人物模型时,检查人物: 位置信息是否在0点布线/UV是否正常身体各部分是否分开各部分命名是否清晰骨骼需要绑定 二、Unity人物动画 https://www.bilibili.com/video/BV1cc41197mF?spm_id_from333.788.recommend_more_video.-1&a…...
【和春笋一起学C++】(十四)指针与const
将const用于指针,有两种情况: const int *pt; int * const pt; 目录 1. const int *pt 2. int * const pt 3. 扩展 1. const int *pt 首先看第一种情况,const在int的前面,有如下语句: int peoples12࿱…...
AI知识梳理——RAG、Agent、ReAct、LangChain、LangGraph、MCP、Function Calling、JSON-RPC
AI技术I AI技术II RAG 📌 高度凝练表达 RAG (检索增强生成)是一种结合信息检索与生成式人工智能的技术框架,旨在提升大型语言模型(LLM)的输出准确性和实用性。通过在生成响应前引入外部知识库的信息&#…...
ModuleNotFoundError: No module named ‘SDToolbox‘
(py311) C:>python Python 3.11.11 | packaged by Anaconda, Inc. | (main, Dec 11 2024, 16:34:19) [MSC v.1929 64 bit (AMD64)] on win32 Type “help”, “copyright”, “credits” or “license” for more information. from SDToolbox import PostShock_eq Tracebac…...
在宝塔中使用.NET环境管理部署 .NET Core项目
本次采用的演示环境未腾讯云轻量级服务器,使用应用模板,选择宝塔liunx面板。 一、登录宝塔安装环境 直接选择免密登录 进入腾讯云webshell后,输入bt,选择14 选择网站选择.NET项目安装.NET环境管理安装对应的.NET 版本 注意&…...