Python酷库之旅-第三方库openpyxl(03)
目录
一、 openpyxl库的由来
1、背景
2、起源
3、发展
4、特点
4-1、支持.xlsx格式
4-2、读写Excel文件
4-3、操作单元格
4-4、创建和修改工作表
4-5、样式设置
4-6、图表和公式
4-7、支持数字和日期格式
二、openpyxl库的优缺点
1、优点
1-1、支持现代Excel格式
1-2、功能丰富
1-3、易于使用
1-4、与Excel兼容性
1-5、性能良好
1-6、社区支持
1-7、跨平台
2、缺点
2-1、不支持旧版格式
2-2、某些特性支持有限
2-3、内存占用
2-4、文档和示例可能不足
2-5.、依赖关系
2-6、学习曲线
三、openpyxl库的用途
1、读取Excel文件
2、写入Excel文件
3、修改Excel文件
4、自动化
5、与Excel交互
6、数据迁移和转换
7、创建模板化的报告
四、如何学好openpyxl库?
1、获取openpyxl库的属性和方法
2、获取xlwt库的帮助信息
3、用法精讲
3-11、openpyxl.Workbook.remove方法
3-11-1、语法
3-11-2、参数
3-11-3、功能
3-11-4、返回值
3-11-5、说明
3-11-6、用法
3-12、openpyxl.Workbook.remove_sheet方法
3-12-1、语法
3-12-2、参数
3-12-3、功能
3-12-4、返回值
3-12-5、说明
3-12-6、用法
3-13、openpyxl.Workbook.save方法
3-13-1、语法
3-13-2、参数
3-13-3、功能
3-13-4、返回值
3-13-5、说明
3-13-6、用法
3-14、openpyxl.Workbook.create_named_range方法
3-14-1、语法
3-14-2、参数
3-14-3、功能
3-14-4、返回值
3-14-5、说明
3-14-6、用法
3-15、openpyxl.Workbook.create_sheet方法
3-15-1、语法
3-15-2、参数
3-15-3、功能
3-15-4、返回值
3-15-5、说明
3-15-6、用法
五、推荐阅读
1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页
一、 openpyxl库的由来
openpyxl库的由来可以总结为以下几点:
1、背景
在openpyxl库诞生之前,Python中缺乏一个专门用于读取和编写Office Open XML格式(如Excel 2010及更高版本的.xlsx文件)的库。
2、起源
openpyxl库的创建是为了解决上述提到的Python在处理Excel文件时的不足,它的开发受到了PHPExcel团队的启发,因为openpyxl最初是基于PHPExcel的。
3、发展
随着时间的推移,openpyxl逐渐发展成为一个功能强大的Python库,专门用于处理Excel文件。它支持Excel 2010及更高版本的文件格式,并提供了丰富的API,用于读取、写入、修改Excel文件。
4、特点
4-1、支持.xlsx格式
openpyxl主要用于处理Excel 2010及更新版本的.xlsx文件。
4-2、读写Excel文件
使用openpyxl可以读取现有的Excel文件,获取数据,修改数据,并保存到新的文件中。
4-3、操作单元格
openpyxl允许用户按行、列或具体的单元格进行数据的读取和写入。
4-4、创建和修改工作表
用户可以创建新的工作表,复制和删除现有的工作表,设置工作表的属性等。
4-5、样式设置
openpyxl支持设置单元格的字体、颜色、边框等样式。
4-6、图表和公式
用户可以通过openpyxl创建图表、添加公式等。
4-7、支持数字和日期格式
openpyxl能够正确处理数字和日期格式,确保在Excel中显示正确的格式。
综上所述,openpyxl库的出现填补了Python在处理Excel文件时的空白,经过不断的发展和完善,成为了一个功能丰富、易于使用的Python库。
二、openpyxl库的优缺点
openpyxl库是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库,它基于Python,并且对于处理Excel文件提供了很多便利的功能,其主要优缺点有:
1、优点
1-1、支持现代Excel格式
openpyxl支持.xlsx格式的Excel文件,这是Excel 2010及更高版本使用的格式,也是目前广泛使用的格式。
1-2、功能丰富
openpyxl提供了创建、修改和保存Excel工作簿、工作表、单元格、图表、公式、图像等功能。
1-3、易于使用
openpyxl的API设计得相对直观,使得Python开发者能够很容易地掌握和使用。
1-4、与Excel兼容性
openpyxl能够处理Excel文件中的很多复杂特性,如公式、样式、条件格式等,这确保了与Excel的良好兼容性。
1-5、性能良好
在处理大型Excel文件时,openpyxl通常能够保持较好的性能。
1-6、社区支持
openpyxl是一个开源项目,拥有活跃的社区支持和维护,这意味着开发者可以获得帮助和修复错误的快速响应。
1-7、跨平台
openpyxl可以在不同的操作系统上运行,包括Windows、Linux和macOS等。
2、缺点
2-1、不支持旧版格式
openpyxl不支持较旧的.xls格式(Excel 97-2003)。如果需要处理这种格式的文件,需要使用其他库如xlrd和xlwt(尽管这些库也面临一些兼容性和维护问题)。
2-2、某些特性支持有限
虽然openpyxl支持许多Excel特性,但可能对于某些高级或特定的Excel功能支持有限或不支持。
2-3、内存占用
在处理大型Excel文件时,openpyxl可能会占用较多的内存。这是因为openpyxl会将整个工作簿加载到内存中。
2-4、文档和示例可能不足
尽管openpyxl的文档相对完整,但对于某些高级功能或特定用例,可能缺乏足够的示例或详细解释。
2-5.、依赖关系
openpyxl依赖于lxml和et_xmlfile这两个Python库来处理XML和Excel文件,在某些环境中,可能需要额外安装这些依赖项。
2-6、学习曲线
虽然openpyxl的API设计得相对直观,但对于初学者来说,可能需要一些时间来熟悉和掌握其用法。
三、openpyxl库的用途
openpyxl是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它是用Python编写的,不需要Microsoft Excel,并且支持多种Excel数据类型,包括图表、图像、公式等,其主要用途有:
1、读取Excel文件
你可以使用openpyxl来读取 Excel 文件中的数据,如单元格值、工作表名称、公式等,它支持多种数据类型,如字符串、数字、日期等。
2、写入Excel文件
使用openpyxl,你可以创建新的Excel文件或向现有文件添加数据,你可以设置单元格的字体、颜色、边框等样式,你还可以添加图表、图像和其他复杂的Excel功能。
3、修改Excel文件
你可以使用openpyxl来修改现有的Excel文件,如更改单元格值、添加或删除工作表等,这对于自动化数据处理和报告生成非常有用。
4、自动化
openpyxl可以与其他Python库和框架(如 pandas、numpy、matplotlib 等)结合使用,以自动化数据处理和分析任务。你可以编写脚本来从多个数据源收集数据,将数据整合到 Excel 文件中,并执行各种数据分析任务。
5、与Excel交互
如果你正在开发需要与Excel交互的应用程序或工具,openpyxl可以提供一个强大的API来处理Excel文件,它允许你读取和写入Excel文件,而无需依赖Microsoft Excel或其他第三方库。
6、数据迁移和转换
使用openpyxl,你可以轻松地将数据从Excel文件迁移到其他数据库或文件格式,或将其他数据源的数据导入到Excel文件中。
7、创建模板化的报告
你可以使用openpyxl来创建模板化的Excel报告,并在需要时填充数据,这对于需要定期生成具有一致格式和布局的报告的场景非常有用。
总之,openpyxl是一个功能强大的库,可用于在Python中处理Excel文件,它提供了灵活的API来读取、写入、修改和自动化Excel文件的各个方面。
四、如何学好openpyxl库?
1、获取openpyxl库的属性和方法
用print()和dir()两个函数获取openpyxl库所有属性和方法的列表
# ['DEBUG', 'DEFUSEDXML', 'LXML', 'NUMPY', 'Workbook', '__author__', '__author_email__', '__builtins__', '__cached__',
# '__doc__', '__file__', '__license__', '__loader__', '__maintainer_email__', '__name__', '__package__', '__path__',
# '__spec__', '__url__', '__version__', '_constants', 'cell', 'chart', 'chartsheet', 'comments', 'compat', 'constants',
# 'descriptors', 'drawing', 'formatting', 'formula', 'load_workbook', 'open', 'packaging', 'pivot', 'reader', 'styles',
# 'utils', 'workbook', 'worksheet', 'writer', 'xml']
2、获取xlwt库的帮助信息
用help()函数获取openpyxl库的帮助信息
Help on package openpyxl:NAMEopenpyxl - # Copyright (c) 2010-2024 openpyxlPACKAGE CONTENTS_constantscell (package)chart (package)chartsheet (package)comments (package)compat (package)descriptors (package)drawing (package)formatting (package)formula (package)packaging (package)pivot (package)reader (package)styles (package)utils (package)workbook (package)worksheet (package)writer (package)xml (package)SUBMODULESconstantsDATADEBUG = FalseDEFUSEDXML = FalseLXML = TrueNUMPY = True__author_email__ = 'charlie.clark@clark-consulting.eu'__license__ = 'MIT'__maintainer_email__ = 'openpyxl-users@googlegroups.com'__url__ = 'https://openpyxl.readthedocs.io'VERSION3.1.3AUTHORSee AUTHORSFILEe:\python_workspace\pythonproject\lib\site-packages\openpyxl\__init__.py
3、用法精讲
3-11、openpyxl.Workbook.remove方法
3-11-1、语法
remove(self, worksheet)Remove `worksheet` from this workbook.
3-11-2、参数
3-11-2-1、self(必须):一个对实例对象本身的引用,在类的所有方法中都会自动传递。
3-11-2-2、worksheet(必须):一个worksheet对象,表示需要删除的工作表对象。
3-11-3、功能
用于从工作簿中删除指定的工作表。
3-11-4、返回值
该方法没有返回值,但会直接从工作簿中删除指定的工作表。
3-11-5、说明
3-11-5-1、引用:确保传入的worksheet对象是当前工作簿中的有效工作表。如果传入一个不属于当前工作簿的工作表对象,会引发ValueError异常。
3-11-5-2、不可恢复:一旦删除工作表,这个操作是不可恢复的,请确保你真的要删除这个工作表,或者提前备份重要的数据。
3-11-5-3、最少工作表:工作簿中至少要保留一个工作表,不能全部删除。如果尝试删除最后一个工作表,会引发ValueError异常。
3-11-6、用法
# 11、openpyxl.Workbook.remove方法
from openpyxl import Workbook
# 创建一个新的工作簿
wb = Workbook()
# 创建多个工作表
ws1 = wb.create_sheet(title="Sheet1")
ws2 = wb.create_sheet(title="Sheet2")
ws3 = wb.create_sheet(title="Sheet3")
# 初始工作表顺序
print([sheet.title for sheet in wb.worksheets])
# 删除 "Sheet2" 工作表
wb.remove(ws2)
# 删除后的工作表顺序
print([sheet.title for sheet in wb.worksheets])
3-12、openpyxl.Workbook.remove_sheet方法
3-12-1、语法
remove_sheet(self, worksheet)Remove `worksheet` from this workbook... note::Deprecated: Use wb.remove(worksheet) or del wb[sheetname]
3-12-2、参数
3-12-2-1、self(必须):一个对实例对象本身的引用,在类的所有方法中都会自动传递。
3-12-2-2、worksheet(必须):一个worksheet对象,表示需要删除的工作表对象。
3-12-3、功能
用于从工作簿中删除指定的工作表。
3-12-4、返回值
该方法没有返回值,但会直接从工作簿中删除指定的工作表。
3-12-5、说明
从openpyxl 2.5版本开始,这个方法已经被弃用,推荐使用remove方法代替。
3-12-6、用法
# 12、openpyxl.Workbook.remove_sheet方法
from openpyxl import Workbook
# 创建一个新的工作簿
wb = Workbook()
# 创建多个工作表
ws1 = wb.create_sheet(title="Sheet1")
ws2 = wb.create_sheet(title="Sheet2")
ws3 = wb.create_sheet(title="Sheet3")
# 初始工作表顺序
print([sheet.title for sheet in wb.worksheets])
# 删除 "Sheet2" 工作表 (不推荐使用的旧方法)
wb.remove_sheet(ws2)
# 删除 "Sheet2" 工作表 (推荐的现代方法)
# wb.remove(ws2)
# 删除后的工作表顺序
print([sheet.title for sheet in wb.worksheets])
3-13、openpyxl.Workbook.save方法
3-13-1、语法
save(self, filename)Save the current workbook under the given `filename`.Use this function instead of using an `ExcelWriter`... warning::When creating your workbook using `write_only` set to True,you will only be able to call this function once. Subsequent attempts tomodify or save the file will raise an :class:`openpyxl.shared.exc.WorkbookAlreadySaved` exception.
3-13-2、参数
3-13-2-1、self(必须):一个对实例对象本身的引用,在类的所有方法中都会自动传递。
3-13-2-2、filename(必须):一个字符串或二进制模式下保存的类似文件的对象,表示要保存的Excel文件的路径或类似文件的对象。
3-13-3、功能
用于将工作簿保存到文件中。
3-13-4、返回值
没有返回值(或者返回None),它的主要目的是执行保存操作。
3-13-5、说明
3-13-5-1、文件格式:确保文件名的后缀为.xlsx,因为openpyxl主要处理这种格式。如果使用其他后缀,可能会引发兼容性问题。
3-13-5-2、覆盖文件:如果指定的文件已经存在,save方法会覆盖该文件而不会警告。因此,保存之前要确保不会误覆盖重要文件。
3-13-5-3、路径问题:可以传入相对路径或绝对路径。如果是相对路径,文件会保存在当前工作目录下,可以使用pathlib.Path来更方便地处理路径。
3-13-6、用法
# 13、openpyxl.Workbook.save方法
# 13-1、保存在当前目录下
from openpyxl import Workbook
# 创建一个新的工作簿
wb = Workbook()
# 设置文件名
filename = "example.xlsx"
# 保存工作簿
wb.save(filename)# 13-2、使用pathlib.Path灵活处理路径,可根据需求指定
from openpyxl import Workbook
from pathlib import Path
# 创建一个新的工作簿
wb = Workbook()
# 使用 Path 设置文件路径
file_path = Path("example.xlsx")
# 保存工作簿
wb.save(file_path)
3-14、openpyxl.Workbook.create_named_range方法
3-14-1、语法
create_named_range(self, name, worksheet=None, value=None, scope=None)Create a new named_range on a worksheet.. note::Deprecated: Assign scoped named ranges directly to worksheets or global ones to the workbook. Deprecated in 3.1
3-14-2、参数
3-14-2-1、self(必须):一个对实例对象本身的引用,在类的所有方法中都会自动传递。
3-14-2-2、name(可选):一个字符串,表示命名范围的名称。
3-14-2-3、worksheet(可选):一个worksheet对象,表示命名范围所属的工作表。
3-14-2-4、value(可选):字符串、元组或CellRange等,表示
命名范围对应的单元格范围。可以是一个字符串形式的范围(如 "A1:B2"),也可是一个包含起始和结束单元格的元组(如 ("A1"
, "B2"
)),还可以是一个CellRange对象。
3-14-2-5、scope(可选):一个整数,表示命名范围的作用域。作用域决定了命名范围的可见性,如果不提供,命名范围将全局可见。
3-14-3、功能
用于在工作簿中创建命名范围。
3-14-4、返回值
没有返回值。它的作用是将命名范围添加到工作簿中,因此它不会返回任何值。
3-14-5、说明
3-14-5-1、名称唯一性:确保命名范围的名称在整个工作簿中是唯一的。
3-14-5-2、范围有效性:确保指定的单元格范围在工作表中是有效的。
3-14-5-3、作用域:默认情况下,命名范围在全局范围内可见。如果需要在特定工作表中限定命名范围,可以使用scope参数。
3-14-6、用法
# 14、openpyxl.Workbook.create_named_range方法
from openpyxl import Workbook
from openpyxl.worksheet.cell_range import CellRange
# 创建一个新的工作簿和工作表
wb = Workbook()
ws = wb.active
# 填充一些数据
ws['A1'] = 10
ws['B1'] = 20
# 创建命名范围
wb.create_named_range(name="MyNamedRange",worksheet=ws,value="A1:B1"
)
# 或者使用 CellRange 对象
range_obj = CellRange("A1", "B1")
wb.create_named_range(name="AnotherNamedRange",worksheet=ws,value=range_obj
)
# 保存工作簿
wb.save("example.xlsx")
3-15、openpyxl.Workbook.create_sheet方法
3-15-1、语法
create_sheet(self, title=None, index=None)Create a worksheet (at an optional index).:param title: optional title of the sheet:type title: str:param index: optional position at which the sheet will be inserted:type index: int
3-15-2、参数
3-15-2-1、self(必须):一个对实例对象本身的引用,在类的所有方法中都会自动传递。
3-15-2-2、title(可选):一个字符串(默认值为None),表示工作表的标题。
3-15-2-3、index(可选):一个整数(默认值为None),表示用于指定新工作表应该被插入的位置索引。
3-15-3、功能
用于在当前的工作簿中创建一个新的工作表。
3-15-4、返回值
返回一个代表新创建的工作表的对象。
3-15-5、说明
针对参数index,相关说明如下:
3-15-5-1、不提供index参数,新工作表将默认添加到工作簿的末尾。
3-15-5-2、基于0开始,第一个工作表的索引是0,第二个工作表的索引是1,依此类推。
3-15-5-3、如果提供的索引值已经存在对应的工作表,新工作表将被插入到该位置,并可能导致其他工作表的位置发生变动。
3-15-6、用法
# 15、openpyxl.Workbook.create_sheet方法
from openpyxl import Workbook
# 创建一个新的工作簿
wb = Workbook()
# 创建一个没有指定标题和索引的新工作表(将默认添加到末尾,标题为 "Sheet" 后跟数字)
ws1 = wb.create_sheet()
# 创建一个标题为 "Data" 的新工作表,并指定它应该被插入到索引为 0 的位置(即作为第一个工作表)
ws2 = wb.create_sheet(title="Data", index=1)
# 创建一个标题为 "Report" 的新工作表,并默认添加到末尾(因为未指定索引)
ws3 = wb.create_sheet(title="Report")
# 保存工作簿
wb.save("example.xlsx")
五、推荐阅读
1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页
相关文章:

Python酷库之旅-第三方库openpyxl(03)
目录 一、 openpyxl库的由来 1、背景 2、起源 3、发展 4、特点 4-1、支持.xlsx格式 4-2、读写Excel文件 4-3、操作单元格 4-4、创建和修改工作表 4-5、样式设置 4-6、图表和公式 4-7、支持数字和日期格式 二、openpyxl库的优缺点 1、优点 1-1、支持现代Excel格式…...

电脑丢失dll文件一键修复的方法有哪些?分析dll文件修复的多种策略
我们经常会遇到各种各样的问题,其中之一就是DLL文件的丢失。DLL文件(动态链接库)是操作系统和应用程序正常运行所必需的文件,当这些文件丢失或损坏时,可能会导致软件无法正常启动,甚至影响系统的稳定性。对…...

小程序项目业务逻辑回忆4
用户查询积分 积分获取规则如下: 邀请其他用户购票参会,将获取该用户花费金额的10%获取积分。 邀请用户注册参观展览,需注册并现场签到,将获取10分的奖励积分。 邀请企业用户参展,将获取企业参展金额的5%获取到积分。 上述3条积分获取规…...

LeetCode 16.最接近的三数之和(C++)
链接 https://leetcode.cn/problems/3sum-closest/description/ 题目 给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。 返回这三个数的和。 假定每组输入只存在恰好一个解。 示例1 输入&a…...

JSON.parse 解析NaN, Infinity, -Infinity失败
背景 JSON.parse() 方法解析字符串时, 如果字符串包含NaN, Infinity, -Infinity会报错。因为我们需要先将NaN, Infinity, -Infinity替换成字符类型,再做转换 解决方法 function convert(str) {str str.replace(/NaN/g, "NaN");str str.re…...

【计算机】我不允许还有人不知道数据库是什么
数据库是计算机科学中的一个核心概念,它是用于存储、检索、管理和处理数据的系统。在现代的软件开发和信息技术中,数据库扮演着至关重要的角色。以下是关于数据库的一些基本要点: 数据存储: 数据库提供了一个结构化的方式来存储数据,使得数据可以高效地组织和访问。它通过…...

制作WIFI二维码,实现一键扫描连接WIFI
在现代社会,Wi-Fi已成为我们日常生活中不可或缺的一部分。无论是在家庭、办公室还是公共场所,我们都希望能够快速方便地连接到Wi-Fi网络。下面小编就来和大家分享通过制作WIFI二维码,来实现一键扫描就可以连接WIFI的方法。连接WIFI不用在告诉…...
数据结构-图的基本概念
图的定义 图时由非空的顶点集合和一个描述顶点之间关系的集合组成。可以定义为: G表示一个图,V表示点集,E表示边集。集合E的每一个二元组都包含两个值和,表示…...

【HarmonyOS NEXT 】鸿蒙generateBarcode (码图生成)
本模块支持将字符串转换为二维码或条形码,目前已支持的码制式为EAN-8、EAN-13、UPC-A、UPC-E、Codabar、Code 39、Code 93、Code 128、ITF-14、QR Code、Data Matrix、PDF417、Aztec。暂时不支持多功能码生成。 起始版本:4.1.0(11) 导入模块 import {…...

python测试工程师 之 unittest框架总结
unittest 学习目标unittest 框架的基本使⽤⽅法(组成)断⾔的使⽤ (让程序⾃动的判断预期结果和实际结果是否相符)参数化(多个测试数据, 测试代码写⼀份 传参)⽣成测试报告 复习pythonunittest 框架的介绍核⼼要素(组成)1. TestCase 测试⽤例, 这个测试⽤例是 unittest 的组成部…...

微服务中的相关概念
Eureka Eureka 是由 Netflix 开发的一个服务发现和注册中心,广泛应用于微服务架构中。Eureka 主要用于管理和协调分布式服务的注册和发现,确保各个服务之间能够方便地找到并通信。它是 Netflix OSS(Netflix Open Source Software)…...

常见的设计模式
设计模式是一套被反复使用的、代码设计经验的总结。它们被用来解决软件开发中的某些常见问题,提高代码的可维护性、可扩展性和重用性。设计模式主要分为三大类:创建型模式、结构型模式和行为型模式。以下是一些常见的设计模式及其简要说明: …...

Camtasia2024中文版最新电脑录屏剪辑神器!
大家好,今天我要安利一个我最近超级喜欢的工具——Camtasia2024中文版!这款软件真的太棒了,它让我的视频编辑工作变得更加轻松和高效。如果你也对视频制作感兴趣,那么一定要尝试一下这款神器哦! Camtasia2024win-正式…...

【性能优化】表分区实践最佳案例
背景 随着数字化建设的持续深入,企业的业务规模迎来了高速发展,其数据规模也呈现爆炸式增长,如果继续使用传统解决方案,将所有数据存储在一个表中,对数据的查询和维护效率将是一个巨大的挑战,在这个背景下…...

力扣SQL50 项目员工 I ROUND AVG
Problem: 1075. 项目员工 I 👨🏫 参考题解 Code select project_id,ROUND(AVG(e.experience_years),2) as average_years FROMproject as p LEFT JOINemployee as e ONp.employee_id e.employee_id GROUP BYp.project_id;...

nuscenes 数据集学习笔记
目录 数据信息类型: 数据信息类型: Map & Camera(png), Lidar(激光雷达) & Radar(雷达)(pcd), Json 文件结构(以v1.0-mini为例): maps: 存放Map的png文件samples: 存放Camera, Lidar, Radar关键非结构化数据信息, 带标注sweeps: 存放Camera, Lidar, Radar 次要非结构…...

在Windows上用MinGW编译OpenCV项目运行全流程
一、准备软件 OpenCV源码CMake工具MinGW工具链(需要选用 posix 线程版本:原因见此) 二、操作步骤 官网提供了VC16构建版本的二进制包,但是没有给出GCC编译的版本。所以如果使用MinGW进行构建,那就只能从源码开始构建…...

用Vite基于Vue3+ts+DataV+ECharts开发数据可视化大屏,即能快速开发又能保证屏幕适配
数据可视化大屏 基于 Vue3、Typescript、DataV、ECharts5 框架的大数据可视化(大屏展示)开发。此项目vue3实现界面,采用新版动态屏幕适配方案,全局渲染组件封装,支持数据动态刷新渲染、内部DataV、ECharts图表都支持自…...

大二学生眼中的Netty?基于Netty实现内网穿透!
爷的开场白 掘金的朋友们大家好!我是新来的Java练习生 CodeCodeBond! 这段时间呢,博主在学习Netty,想做一个自己感兴趣好玩的东西,那就是内网穿透!!(已经实现主要代理功能但有待优化…...

JavaStringBuffer与StringBuilder
StringBuffer、StringBuilder 文章目录 StringBuffer、StringBuilderStringBuffer和StringBuilder的理解可变性分析对于String对于StringBuilder 常用方法执行效率对比 StringBuffer和StringBuilder的理解 String 不可变的字符序列 StringBuffer 可变的字符序列 JDK1.0声明&…...

云徙科技助力竹叶青实现用户精细化运营,拉动全渠道销售额增长
竹叶青茶以其别具一格的风味与深厚的历史底蕴,一直被誉为茶中瑰宝。历经千年的传承与创新,竹叶青不仅坚守着茶叶品质的极致追求,更在数字化的浪潮中,率先打破传统,以科技力量赋能品牌,成为茶行业的领军者。…...

深度揭秘:深度学习框架下的神经网络架构进化
深度学习框架下的神经网络架构经历了从基础到复杂的显著进化,这一进程不仅推动了人工智能领域的突破性进展,还极大地影响了诸多行业应用。本文旨在深入浅出地揭示这一进化历程,探讨关键架构的创新点及其对现实世界的影响。 引言:…...

MySQL的DML语句
文章目录 ☃️概述☃️DML☃️添加数据☃️更新和删除数据☃️DML的重要性 ☃️概述 MySQL 通用语法分类 ● DDL: 数据定义语言,用来 定义数据库对象(数据库、表、字段) ● DML: 数据操作语言,用来对数据库表中的数据进行增删改 …...

Wireshark的基本用法以及注意事项
Wireshark 是一个流行的网络协议分析工具,可以捕获和分析网络数据包。以下是一些常见的 Wireshark 的用法: 安装和启动:首先需要下载和安装 Wireshark。安装完成后,可以通过启动 Wireshark 应用程序来打开它。 选择网络接口&…...

集团门户网站的设计
管理员账户功能包括:系统首页,个人中心,管理员管理,论坛管理,集团文化管理,基础数据管理,公告通知管理 前台账户功能包括:系统首页,个人中心,论坛࿰…...

Tomcat基础详解
第一篇:Tomcat基础篇 lecture:邓澎波 一、构建Tomcat源码环境 工欲善其事必先利其器,为了学好Tomcat源码,我们需要先在本地构建一个Tomcat的运行环境。 1.源码环境下载 源码有两种下载方式: 1.1 官网下载 https://…...

【Python爬虫】爬取名人名言页面并进行简单的数据清洗(入门级)
目录 资源链接 一、网站选择 二、数据爬取要求 三、数据清洗要求 四、实现代码 1.数据采集 2.数据清洗 资源链接 下面有笔者所放的源码下载链接,读者可自行下载: 链接:https://pan.baidu.com/s/1YmTdlnbSJLvLrrx92zz6Qg 提取码&…...

Microsoft Visual C++ Redistributable 【安装包】【高速下载】
方法1、可以从官方下载,如下图 Visual C Redistributable for Visual Studio 2015 但是此链接只有一个版本 方法2 已经下载好并且已经整理好了2008--2022的所有版本点击下方链接即可高速下载 如果是win7-win8-win10-win11直接可以下载2015--2022版本,…...

MFC绘制哆啦A梦
文章目录 OnPaint绘制代码完整Visual Studio工程下载其他卡通人物绘制 OnPaint绘制代码 CPaintDC dc(this); // 用于绘画的设备上下文CRect rc;GetWindowRect(rc);int cxClient rc.Width();int cyClient rc.Height();// 辅助线HPEN hPen CreatePen(PS_DOT, 1, RGB(192, 192,…...

网络编程(TCP协议,UDP协议)
目录 网络编程三要素 IP IPv4 InetAddress类 端口号 协议 UDP协议 UDP协议发送数据 UDP协议接收数据 UDP的三种通信方式(代码实现) TCP协议 TCP通信程序 三次握手和四次挥手 练习 1、客户端:多次发送数据服务器:接收多次接收数据,并打印 2、客户端…...