python常用
环境配置
conda
Conda自动补全
在终端激活conda环境的时候按tab不能自动补全activate和环境名。安装后可用tab进行补全。
安装 conda-bash-completion 插件:GitHub
安装方法:
conda install -c conda-forge conda-bash-completion
常用命令
#创建虚拟环境
conda create -n your_env_name python=X.X(3.6、3.7等)
#激活虚拟环境
conda activate your_env_name(虚拟环境名称)
#退出虚拟环境
conda deactivate your_env_name(虚拟环境名称)
#删除虚拟环境
conda remove -n your_env_name(虚拟环境名称) --all
#添加 python 模块
conda install [module]
#查看安装了哪些包
conda list
#查看当前存在哪些虚拟环境
conda env list
#检查更新当前conda
conda update conda
#更新anaconda
conda update anaconda
#更新所有库
conda update --all
#更新python
conda update python
pip
换源
Python使用pip作为依赖管理工具,很多时候,我们在安装依赖的时候,会出现无法访问网络,这是因为我们的网络被墙了,需要完成以下配置
方式一
- 运行以下命令,配置pip全局使用华为云的镜像下载依赖
pip config set global.index-url "http://mirrors.tools.huawei.com/pypi/simple"
- 运行以下命令,配置上述局点为可信局点
pip config set global.trusted-host "mirrors.tools.huawei.com"
方式二
pip/pip3用于python软件模块下载,通过~/.pip/pip.conf
文件配置,如果没有这个目录和文件,可以生成一个进行设置,如下
mkdir ~/.pip
vim ~/.pip/pip.conf
填入以下内容:
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com
之后更新
pip install update
这样就切换成国内源了,安装时速度非常快。
其它的源设置类似,只需要修改服务器即可,如清华源等:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
语法
在Python中,**
是一个双星号操作符,也称为指数运算符或幂运算符。它用于计算一个数的指数或幂,例如:2的3次方可以用2**3
表示,结果为8。
除了计算指数,还可以用于解包操作。当在函数调用时使用字典时,它会将一个字典或关键字参数的集合解包成独立的参数。例如:
def foo(a, b, c):print(a, b, c)params = {'a': 1, 'b': 2, 'c': 3}
foo(**params) # 等价于 foo(a=1, b=2, c=3)
在这个例子中,使用双星号将字典 params 解包成独立的关键字参数传递给函数 foo。在函数调用中,**params
等价于 a=1, b=2, c=3
。
另外,单个星号*
也有类似的作用,但它是用于将可迭代对象解包成单独的参数,例如:
numbers = [1, 2, 3]
print(*numbers) # 等价于 print(1, 2, 3)
在这个例子中,使用单星号将列表 numbers 解包成独立的位置参数传递给函数 print。在函数调用中,*numbers
等价于 1, 2, 3
。
内置函数
getattr
描述
getattr() 函数用于返回一个对象属性值。
语法
getattr(object, name[, default])
参数
- object – 对象。
- name – 字符串,对象属性。
- default – 默认返回值,如果不提供该参数,在没有对应属性时,将触发 AttributeError。
返回值
返回对象属性值。
__import__
描述
__import__()
函数用于动态加载类和函数 。
如果一个模块经常变化就可以使用 __import__()
来动态载入。
语法
__import__(name[, globals[, locals[, fromlist[, level]]]])
参数
- name – 模块名
返回值
返回元组列表。
__import__(package.module)
相当于from package import module
,如果fromlist
不传入值,则返回package
对应的模块,如果fromlist
传入值,则返回package.module
对应的模块。
iter
使用iter()
函数可以将可迭代对象转换为迭代器。
可迭代对象是指实现了__iter__()
或__getitem__()
方法的对象。对于一个可迭代对象,可以通过调用它的迭代器来依次获取其中的元素,直到所有元素都被访问完毕。
而迭代器是一种特殊的对象,能够记忆遍历的位置,并且可以按需产生下一个值,直到没有值可以生成时抛出StopIteration异常。迭代器还实现了__next__()
方法,每次调用该方法可以返回下一个元素的值。因此,在Python中,许多内置函数(例如for
循环和zip()
函数)都是基于迭代器工作的。
next
next()
函数是 Python 中的内置函数,它允许您不断从迭代器中取出下一个元素。其语法如下:
next(iterator[, default])
参数说明:
- iterator:必需,表示要获取下一个元素的迭代器对象。
- default:可选,如果迭代器已到达末尾,该值将返回,默认为 None。
基本上,它用于检索序列(例如列表、元组、集合等)的下一个元素,直到所有的元素都被迭代完为止。
在调用 next()
时,它会返回迭代器中的下一个条目,并将迭代器移动到下一个项目。每次调用 next()
函数时,它都将返回下一个条目,直到没有更多的元素,并引发 StopIteration 异常。
super
super()函数的作用:
- 在子类中调用父类的方法实现代码复用
- 不需要硬编码父类的名字,使继承关系更灵活
- 根据方法解析顺序(MRO)动态确定调用的父类
super()的主要场景:
-
单继承
这里super()就是父类的引用,可以避免重复命名父类 -
多继承
super()会根据MRO调用正确的父类,不会像直接调用被覆盖 -
协作多继承
通过只调用部分父类的super(),实现协作式继承
super()的实现机制:
- 会根据调用环境动态绑定父类
- 是通过
__class__
和__thisclass__
确定的 - 最终会调用父类的
__getattribute__
方法
super()需要注意:
- 只能在新式类中使用,旧式类会报错
- 在Python2中调用有些差异,需要使用super(Class, self)
- 不可实例化,是个只能调用的对象
Python中方法解析顺序(Method Resolution Order, MRO)的概念。
MRO是多重继承场景下,用于确定方法调用顺序的一套规则。主要原则是:
- 子类会先调用
- 广度优先,左到右顺序调用
- 避免重复调用(C3算法)
with语句
with所求值的对象必须有一个__enter__()
方法,一个__exit__()
方法。
紧跟with后面的语句被求值后,返回对象的__enter__()
方法被调用,这个方法的返回值将被赋值给as后面的变量。当with后面的代码块全部被执行完之后,将调用前面返回对象的__exit__()
方法。
super() 是python 中调用父类(超类)的一种方法,在子类中可以通过super()方法来调用父类的方法。【超类: 是指 2层以上的继承关系,假如 C类继承B类,B类由继承A类,那么A类就是C类的超类】
匿名函数
Lambda函数也被称为匿名函数,通常是一个表达式,而不是单个语句。可以使用Lambda定义简单的单行函数,并将其作为参数传递给某些函数。
Lambda函数通过lambda关键字创建,它的一般格式如下:
lambda arguments: expression
其中,arguments表示函数的参数列表,expression则表示函数的返回值。例如以下代码:
lambda x: x*2
表示一个以x为参数并返回x乘以2的匿名函数。
通常情况下,Lambda函数与高阶函数(Higher-order functions)一起使用。高阶函数指的是能够接收函数作为参数和/或返回函数的函数。
Lambda函数可以替代其他函数引用。假设要编写一个将两个数相加的函数,可以使用Lambda函数作为输入:
add = lambda x, y: x + y
print(add(2, 3)) # 5
Lambda函数可以非常方便地与Python中map()
, filter()
和reduce()
函数组合使用,将函数映射到一组输入上,并基于规则筛选这些输入。例如:
Map():
my_list = [1, 2, 3, 4, 5]
result = list(map(lambda x: x ** 2, my_list))
print(result) # [1, 4, 9, 16, 25]
以上代码将一个Lambda函数与Python的map()函数一起使用,对列表中的每个元素进行了平方运算。
Filter():
my_list = [1, 2, 3, 4, 5]
result = list(filter(lambda x: x % 2 == 0, my_list))
print(result) # [2, 4]
以上代码将Lambda函数与Python的filter()函数一起使用,可以在列表中过滤出所有的偶数。
Reduce():
from functools import reducemy_list = [1, 2, 3, 4, 5]
result = reduce(lambda x, y: x + y, my_list)
print(result) # 15
以上代码将Lambda函数与Python的reduce()
函数一起使用,计算列表中所有数字的和。
总之,Lambda函数是一种非常强大的工具,可以轻松创建简单的函数并与其他函数一起使用,方便编写更加复杂的程序。
matplotlib
matplotlib.pyplot.subplots
函数用于创建一个新的图形,并在该图形上创建一个或多个子图,也称为子区域。下面是该函数的语法:
matplotlib.pyplot.subplots(nrows=1, ncols=1, **kwargs)
参数说明:
- nrows: 子图的行数,默认值为1
- ncols: 子图的列数,默认值为1
- sharex: 共享x轴,默认为False
- sharey: 共享y轴,默认为False
- squeeze: 如果设置为True,子图数组的形状将自动调整以删除任何单元格,其中没有轴绘制
- subplot_kw: 用于添加子图时传递给 add_subplot() 的字典参数
- gridspec_kw: 用于创建子图网格的参数字典
返回值:
- fig: 图形对象
- axes: 子图对象,一个numpy数组对象,其形状为 (nrows, ncols)
add_subplot
方法是Figure对象的一个成员方法,用于向指定的图形对象中添加一个子图,该方法有以下参数:
add_subplot(nrows, ncols, index, **kwargs)
参数说明:
- nrows: 子图的行数
- ncols: 子图的列数
- index: 子图的位置
- **kwargs: 其他可选参数,用于设置子图的属性,例如标题、坐标轴范围等
返回值:
- ax: 子图对象
例如,以下代码创建了一个2x2的子图,其中第一个子图位于第一行第一列,第二个子图位于第一行第二列,第三个子图位于第二行第一列,第四个子图位于第二行第二列。
import matplotlib.pyplot as plt
fig, axs = plt.subplots(nrows=2, ncols=2)
axs[0, 0].plot([1, 2, 3, 4], [1, 4, 2, 3])
axs[0, 0].set_title('Subplot 1')
axs[0, 1].plot([1, 2, 3, 4], [1, 4, 2, 3])
axs[0, 1].set_title('Subplot 2')
axs[1, 0].plot([1, 2, 3, 4], [1, 4, 2, 3])
axs[1, 0].set_title('Subplot 3')
axs[1, 1].plot([1, 2, 3, 4], [1, 4, 2, 3])
axs[1, 1].set_title('Subplot 4')
plt.show()
该代码创建了一个包含四个子图的2x2网格,每个子图都绘制了一条简单的线,并设置了一个标题。
相关文章:
python常用
环境配置 conda Conda自动补全 在终端激活conda环境的时候按tab不能自动补全activate和环境名。安装后可用tab进行补全。 安装 conda-bash-completion 插件:GitHub 安装方法: conda install -c conda-forge conda-bash-completion常用命令 #创建虚拟…...
jeecg如何创建报表并配置到菜单中
当使用jeecg创建单表之后,需要进行报表显示,并把报表配置到菜单中,该如何操作呢?下面进行详细讲解。这里以课程表这张表为例进行讲解。 一.表单创建完成,并配置好菜单栏。具体步骤略,如下图: 二.创建积木报表 1.左侧边栏展开低代码开发菜单,进入报表设计器栏目 2.进…...
Servlet+JDBC实战开发书店项目讲解第12讲:会员管理功能
ServletJDBC实战开发书店项目讲解第12讲:会员管理功能 实现思路: 显示会员列表: 创建一个管理页面,用于显示所有会员的信息。在后端,创建一个Servlet来处理显示会员列表的请求。在该Servlet中,通过JDBC从数…...
java面向对象——继承以及super关键字
继承的概念 1. 被继承的类称为父类(超类),继承父类的类都称为子类(派生类) 2. 继承是指一个对象直接使用另一个对象的属性和方法,但是能继承非私有的属性和方法;(1) 构造方法不能被继承。(2) 但…...
[机缘参悟-101] :IT人 - 遵从世界本源的样子,不带个人情感、道德、认知倾向,接纳一切,你就拥有无限的力量
目录 道的本义 如来的本义 观音的本义 无为而治本质是顺势而为 儒家的本质 感悟: 道的本义本质:天地的力量和运行规律 "天地以万物为刍狗"是出自《道德经》第五十章的一句话。在这句话中,"天地"指的是宇宙&#x…...
C++--深度理解智能指针
PS:智能指针简单应用看这里 http://t.csdn.cn/qN7IK 1.智能指针的介绍 在C中,智能指针有三个版本,分别为: auto_ptr unique_ptr shared_ptr 这三个版本的智能指针中,shared_ptr最为完善,auto_ptr基本上没有太大用…...
Spring Boot使用MySQL的默认连接池
笔者在近期秋招面试的时候被问到了这个问题,现在简单梳理一下便于后期重新回顾,并加深记忆。 Spring Boot 默认使用的数据库连接池是 HikariCP(开源库地址)。 HikariCP 是目前性能最好的连接池之一,它具有高度的性能、可靠性和可扩展性&…...
conda使用教程
Conda介绍 conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理和环境管理。包管理与pip的使用方法类似似,环境管理则是允许用户方便滴安装不同版本的python环境并在不同环境之间快速地切换。 conda的设计理念 conda将几乎所有…...
什么是LLM大语言模型?
什么是LLM大语言模型? 大语言模型(英文:Large Language Model,缩写LLM),也称大型语言模型,是一种人工智能模型,旨在理解和生成人类语言。它们在大量的文本数据上进行训练࿰…...
jenkins同一jar包部署到多台服务器
文章目录 安装插件配置ssh服务构建完成后执行 没有部署过可以跟这个下面的步骤先部署一遍,我这篇主要讲jenkins同一jar包部署到多台服务器 【Jenkins】部署Springboot项目https://blog.csdn.net/qq_39017153/article/details/131901613 安装插件 Publish Over SSH 这…...
(四)Doceke安装MySQL镜像+Docker启动MySQL容器
Doceke安装MySQL镜像/Docker启动MySQL容器 一、doceke安装MySQL镜像 切换到root用户,su root 。 1、启动Docker 启动:sudo systemctl start docker 停止:systemctl stop docker 重启:systemctl restart docker 查看docker运行…...
Android Studio:Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7
原项目使用jdk8,升级gradle后出现的该问题。 java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7at org.codehaus.groovy.vmplugin.VMPluginFactory.<clinit>(VMPluginFactory.java:43)at org.codehaus.gro…...
Spring Clould 搜索技术 - elasticsearch
视频地址:微服务(SpringCloudRabbitMQDockerRedis搜索分布式) 初识ES-什么是elasticsearch(P77,P78) 1.elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能…...
android核绑定cpuset配置与检测进程所在核cpuset方法
一、开机阶段 开机有如下阶段。抛开开机动画需要的audio、surfaceflinger等进程,大部分android程序是在/data分区加载完整以后开始加载。所以cpuset的配置可以在 post-fs-data之后。注意,init.rc的不同阶段脚本都可能覆盖前面配置的cpuset。配置好检查与…...
Lnton羚通关于如何使用nanoPC-T4 安装OpenCV?
nanoPC-T4 安装 OpenCV Note: OpenCV has been pre-installed in FriendlyCore/FriendlyDesktop (Version after 201905) and does not require manual installation. Please download the latest FriendlyCore/FriendlyDesktop Image file from the following URL: http://do…...
内存泄漏:前端开发者的噩梦——内存泄露的原因及排查
在前端开发中,内存泄漏是一个常见但令人头疼的问题。它会导致应用程序变得缓慢,不稳定,最终可能崩溃。本文将介绍内存泄漏的概念、常见泄漏原因以及如何排查和预防内存泄漏。 什么是内存泄漏? 内存泄漏是指应用程序中的内存被错…...
高效使用ChatGPT之ChatGPT客户端
ChatGPT客户端,支持Mac, Windows, and Linux 下载地址见文章结尾 软件截图 Windows: Mac: 说明 chatgpt桌面版,相比于网页版的chatgpt,最大的特色是支持历史聊天对话记录导出,且支持三种格式:PNG、PDF、…...
【腾讯云 TDSQL-C Serverless 产品体验】基于TDSQL-C 存储爬取的QQ音乐歌单数据
【腾讯云 TDSQL-C Serverless 产品体验】基于TDSQL-C 存储爬取的QQ音乐歌单数据 文章目录 【腾讯云 TDSQL-C Serverless 产品体验】基于TDSQL-C 存储爬取的QQ音乐歌单数据前言出现的背景一、TDSQL-C数据库是什么?二、TDSQL-C 的特点三、TDSQL-C的应用场景四、基于TD…...
leetcode 6450. k-avoiding 数组的最小总和
给你两个整数 n 和 k 。 对于一个由 不同 正整数组成的数组,如果其中不存在任何求和等于 k 的不同元素对,则称其为 k-avoiding 数组。 返回长度为 n 的 k-avoiding 数组的可能的最小总和。 示例 1: 输入:n 5, k 4 输出&#…...
变压器绝缘油耐压试验
试验目的 绝缘油是电气设备常用的绝缘、 灭弧和冷却介质。 为保证它在运行过程中具有良好的性能, 必须定期对其进行各项试验, 尤其是耐压试验。 绝缘油的耐压试验是在专用的击穿电压试验器中进行的, 试验器包括一个瓷质或玻璃油杯、 两个直径…...
Windows控制台API官方文档
2023年8月21日,周下午 中文文档:控制台函数 - Windows Console | Microsoft Learn 英文文档:Console Functions - Windows Console | Microsoft Learn...
PyTorch DataLoader 报错 “DataLoader worker exited unexpectedly“ 的解决方案
注意:博主没有重写d2l的源代码文件,而是创建了一个新的python文件,并重写了该方法。 一、代码运行日志 C:\Users\Administrator\anaconda3\envs\limu\python.exe G:/PyCharmProjects/limu-d2l/ch03/softmax_regression.py Traceback (most r…...
【AI绘画--七夕篇】:七夕特别教程,使用SDXL绘制你的心上人(Stable Diffusion)(封神榜—妲己)
目录 前言0、介绍0-0、结果展示0-1、Stable Diffusion0-2、sdxl介绍 一、云端部署Stable Diffusion1-1、云端平台的优势 二、平台介绍三、注册账号并且开始炼制3-1、购买算力并创建工作空间3-2、启动工作空间3-3、应用市场一键安装3-4、使用Stable-Diffusion作图 四、有女朋友的…...
hadoop2的集群数据将副本存储在hadoop3
在 Hadoop 集群中,HDFS 副本是分布式存储的,会存储在不同的节点上。因此,如果您的 HDFS 所在路径是在 Hadoop2 集群中,您可以在 Hadoop3 集群上添加新的节点,并向 Hadoop3 集群中添加这些新节点上的数据副本。 以下是…...
c# ??=
空合并运算符 ??,用于定义引用类型和可空类型的默认值。如果此运算符的左操作符不为Null,则此操作符返回左操作数,否则返回右操作数。 例如: //当a不为空时返回a,为null时返回b var c a ?? b;空合并赋值运算符??…...
存储系统性能优化中IOMMU的作用是什么?
一、IOMMU原理 IOMMU(Input/Output Memory Management Unit)是一种用于管理计算机内存的技术,它允许将物理内存映射到虚拟地址空间。IOMMU通过使用专用的硬件来管理和优化内存访问,从而提高系统性能和稳定性。本文将详细介绍IOMMU的原理,并介绍一些应用案例和典型的问题解…...
localhost:8080 is already in use
报错原因:本机的8080端口号已经被占用。因为机器的空闲端口号是随机分配的,而idea默认启动的端口号是8080,所以是存在这种情况。 对于这个问题,我们只需要重启idea或者修改项目的启动端口号即可。 更推荐第二种。对于修改项目启动端口号&…...
机器学习深度学习——NLP实战(自然语言推断——数据集)
👨🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习&&深度学习——NLP实战(情感分析模型——textCNN实现) 📚订阅专栏:机器…...
攻防世界-simple_php
原题 解题思路 flag被分成了两个部分:flag2,flag2。获得flag1需要满足变量a0且变量a≠0,这看起来不能实现,但实际上当变量a的值是字符时,与数字比较会发生强制类型转换,所以a为字符型数据即可,变…...
2023MyBatis 八股文——面试题
MyBatis简介 1. MyBatis是什么? MyBatis 是一款优秀的持久层框架,一个半 ORM(对象关系映射)框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及 获取结果集。MyBa…...
解决出海痛点:亚马逊云科技助力智能涂鸦,实现设备互联互通
今年6月,《财富》(中文版)发布“2023年值得关注的中国出海主力”盘点,在七个赛道中聚焦不断开拓新领域、影响力与日俱增的出海企业。涂鸦智能顺利入选,作为一家全球化公司,相比于产品直接到海外销售的传统出…...
国际刑警组织逮捕 14 名涉嫌盗窃 4000 万美元的网络罪犯
Bleeping Computer 网站披露,4 月份,国际刑警组织发动了一起为期四个月,横跨 25 个非洲国家的执法行动 “Africa Cyber Surge II”,共逮捕 14 名网络犯罪嫌疑人,摧毁 20000 多个从事勒索、网络钓鱼、BEC 和在线诈骗的犯…...
MySQL卸载-Linux版
MySQL卸载-Linux版 停止MySQL服务 systemctl stop mysqld 查询MySQL的安装文件 rpm -qa | grep -i mysql 卸载上述查询出来的所有的MySQL安装包 rpm -e mysql-community-client-plugins-8.0.26-1.el7.x86_64 --nodeps rpm -e mysql-community-server-8.0.26-1.el7.x86_64 -…...
快速学会创建uni-app项目并了解pages.json文件
(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 前言 创建 uni-app 项目 通过 HBuilderX 创建 pages.json pages style globalStyle tabBar 前言…...
选云服务器还是物理服务器
选云服务器还是物理服务器 一、为什么需要云服务器或独立服务器取代共享主机 在最早之前,大多数的网站都是共享主机开始的,这里也包含了云虚拟机。这一类的站点还有其他站点都会共同托管在同一台服务器上。但是这种共享机只适用于小的网站,如…...
最新ChatGPT网站AI系统源码+详细图文搭建教程/支持GPT4.0/AI绘画/H5端/Prompt知识库/
一、前言 SparkAi系统是基于国外很火的ChatGPT进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。 那么如何搭建部署AI创作ChatGPT?小编这里写一个详细图文教程吧!…...
Web3 游戏七月洞察:迈向主流采用的临界点?
作者: lesleyfootprint.network 2023 年 7 月,Web3 游戏领域出现了小幅增长,但对于许多项目来说,用户采用仍然是一个持续的挑战。根据 Footprint Analytics 的数据,活跃的区块链游戏数量略有增加,达到 2,471 个。然而…...
Python爬虫——scrapy_多网页下载
在DangSpider类中设置一个基础url base_url http://category.dangdang.com/pg page 1在parse方法中 # 每一页的爬取逻辑都是一样的,所以只需要执行每一页的请求再次调用parse方法就可以了if self.page < 100:self.page 1url self.base_url str(self.page)…...
JDK JRE JVM 三者之间的详解
JDK : Java Development Kit JRE: Java Runtime Environment JVM : JAVA Virtual Machine JDK : Java Development Kit JDK : Java Development Kit【 Java开发者工具】,可以从上图可以看出,JDK包含JRE;java自己的一些开发工具中&#…...
excel常见的数学函数篇2
一、数学函数 1、ABS(number):返回数字的绝对值 语法:ABS(数字);返回数字的绝对值;若引用单元格,把数字换为单元格地址即可 2、INT(number):向小取整 语法:INT(数字);若引用单元格…...
Certify The Web (IIS)
一、简介 Certify The Web 适用于 Windows的SSL 证书管理器用户界面,与所有 ACME v2 CA 兼容,为您的 IIS/Windows 服务器轻松地安装和自动更新来自 Letencrypt.org 和其他 ACME 证书授权机构的免费 SSL/TLS 证书,设置 https 从未如此简单。 …...
【c语言】五子棋(EasyX图形库+背景音乐)
大家好,有没有觉得写了好多c语言代码,面对的都是黑框框控制台,当我们学习了基础的c语言知识,和EasyX图形库后,终于可以和黑框框saygoodbye,今天要分享给大家的是小游戏五子棋,跟着小张一起学习吧 EasyX图形…...
【OpenCV 】对极几何标定质量验证
标定质量验证: 寻找一对对应点,已经知道对应关系及其详细坐标,根据对极几何推导实现 ///get the camera intrinsics and T_Ci_Bstd::vector<Eigen::Matrix3d> M_K;std::vector<Eigen::Matrix4d> T_Ci_B;for (int i 0; i < ne…...
Netty:ByteBuf的清空操作
说明 io.netty.buffer.ByteBuf有个函数clear(),它可以将ByteBuf的readerIndex和writerIndex都设置为0。 代码示例 package com.thb;import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled;public class Demo {public static void main(String[] args…...
SpringCloud最新最全面试题
目录 一、简单说一说什么是微服务? 二、微服务有哪些优缺点? 三、微服务、分布式、集群的区别? 四、什么是Eureka? 五、Eureka有那两大组件? 六、actuator是什么? 七、Discovery是什么? …...
leetcode359周赛
2828. 判别首字母缩略词 核心思想:枚举。只需要枚举首字母和s是否一一对应即可。 2829. k-avoiding 数组的最小总和 核心思想:自己的方法就是哈希表,枚举i的时候,将k-i统计起来,如果出现了那么就跳过。灵神的方法是数学法&#…...
nginx代理webSocket链接响应403
一、场景 使用nginx代理webSocket链接,nginx响应403 1、nginx访问日志响应403 [18/Aug/2023:09:56:36 0800] "GET /FS_WEB_ASS/webim_api/socket/message HTTP/1.1" 403 5 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit…...
websocker无法注入依赖
在公司中准备用websocker统计在线人数,在WebSocketServer使用StringRedisTemplate保存数据到redis中去,但是在保存的时候显示 StringRedisTemplate变量为null 详细问题 2023-08-20 10:37:14.109 ERROR 28240 --- [nio-7125-exec-1] o.a.t.websocket.po…...
如何进行无线网络渗透测试?
我们将重点介绍如何使用Kali Linux进行无线网络渗透测试。无线网络渗透测试是评估无线网络安全性的重要步骤,而Kali Linux作为一款专业的渗透测试发行版,提供了丰富的工具来进行这项任务。 1. 准备工作 在开始无线网络渗透测试之前,有一些准…...
【Python机器学习】实验15 将Lenet5应用于Cifar10数据集(PyTorch实现)
文章目录 CIFAR10数据集介绍1. 数据的下载2.修改模型与前面的参数设置保持一致3. 新建模型4. 从数据集中分批量读取数据5. 定义损失函数6. 定义优化器7. 开始训练8.测试模型 9. 手写体图片的可视化10. 多幅图片的可视化 思考题11. 读取测试集的图片预测值(神经网络的…...