strip

java双亲委派机制及作用

时光怂恿深爱的人放手 提交于 2020-08-12 03:07:15
什么是双亲委派机制 当某个类加载器需要加载某个 .class 文件时,它首先把这个任务委托给他的上级类加载器,递归这个操作,如果上级的类加载器没有加载,自己才会去加载这个类。 类加载器的类别 BootstrapClassLoader(启动类加载器) c++ 编写,加载 java 核心库 java.* ,构造 ExtClassLoader 和 AppClassLoader 。由于引导类加载器涉及到虚拟机本地实现细节,开发者无法直接获取到启动类加载器的引用,所以不允许直接通过引用进行操作 ExtClassLoader (标准扩展类加载器) java 编写,加载扩展库,如 classpath 中的 jre , javax.* 或者 java.ext.dir 指定位置中的类,开发者可以直接使用标准扩展类加载器。 AppClassLoader(系统类加载器) java 编写,加载程序所在的目录,如 user.dir 所在的位置的 class CustomClassLoader(用户自定义类加载器) java 编写,用户自定义的类加载器,可加载指定路径的 class 文件 源码分析 protected Class < ? > loadClass ( String name , boolean resolve ) throws ClassNotFoundException {

Python编程快速上手 让繁琐工作自动化PDF高清完整版免费下载|百度云盘

筅森魡賤 提交于 2020-08-11 20:05:39
百度云盘:Python编程快速上手 让繁琐工作自动化PDF高清完整版免费下载 提取码:6msq 内容简介 如今,人们面临的大多数任务都可以通过编写计算机软件来完成。Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。通过Python编程,我们能够解决现实生活中的很多任务。 本书是一本面向实践的Python编程实用指南。本书的目的,不仅是介绍Python语言的基础知识,而且还通过项目实践教会读者如何应用这些知识和技能。本书的首部分介绍了基本Python编程概念,第二部分介绍了一些不同的任务,通过编写Python程序,可以让计算机自动完成它们。第二部分的每一章都有一些项目程序,供读者学习。每章的末尾还提供了一些习题和深入的实践项目,帮助读者巩固所学的知识。附录部分提供了所有习题的解答。 本书适合任何想要通过Python学习编程的读者,尤其适合缺乏编程基础的初学者。通过阅读本书,读者将能利用强大的编程语言和工具,并且会体会到Python编程的快乐。 作者简介 Al Sweigart 是一名软件开发者,还教小孩和成人编程。他为初学者写了几本Python 书籍,包括《Python 密码学编程》、《Python 游戏编程快速上手》和《Python 和Pygame 游戏开发指南》。 目录 第一部分Python编程基础 第1章 Python基础 3 1.1 在交互式环境中输入表达式

GcExcel:比 Apache POI 速度更快、性能更高

喜夏-厌秋 提交于 2020-08-11 18:28:13
GrapeCity Documents for Excel(GcExcel) 是一款服务端 Java Excel 组件,产品架构轻量灵活,无需 Office 组件依赖,结合 纯前端表格控件 SpreadJS ,在前端呈现 Excel 的数据可视化效果,实现类 Excel 的功能布局、数据分析和交互;在服务端实现批量创建、加载、编辑、导入/导出大型 Excel 文档,为您的应用程序提供 Excel 全栈、全场景解决方案 。 GcExcel 对操作系统的支持 GcExcel 对云服务的支持 GcExcel +SpreadJS 实现Excel 全栈解决方案 与Java电子表格库Apache POI相比, GcExcel 速度更快、性能更高、内存消耗更少。本文将详细比较Apache POI与 GcExcel 的功能和性能,并向您推荐使用GcExcel的12条主要原因**。** 主要功能对比 1. 公式数量 GcExcel 支持 452 种 Excel 计算公式,而在 Apache POI 中,支持的公式数量仅有 157 - 280 种。 2. 导出 PDF GcExcel 支持导出 PDF 格式,包括页面设置选项、PDF 安全选项和文档属性, 而 Apache POI 不支持导出 PDF。 3. 条件格式 GcExcel 内置了更多条件格式规则,如自定义图标集、高于平均值

从字符串中删除标点符号的最佳方法

旧时模样 提交于 2020-08-11 17:11:50
问题: It seems like there should be a simpler way than: 似乎应该有一个比以下方法更简单的方法: import string s = "string. With. Punctuation?" # Sample string out = s.translate(string.maketrans("",""), string.punctuation) Is there? 在那儿? 解决方案: 参考一: https://stackoom.com/question/17Bg/从字符串中删除标点符号的最佳方法 参考二: https://oldbug.net/q/17Bg/Best-way-to-strip-punctuation-from-a-string 来源: oschina 链接: https://my.oschina.net/u/4432649/blog/4411042

项目转Swift指南

爷,独闯天下 提交于 2020-08-11 15:42:51
运行环境:Xcode 11.1 Swift5.0 最近参与的一个项目需要从Objective-C(以下简称OC)转到Swift,期间遇到了一些坑,于是有了这篇总结性的文档。如果你也有将OC项目Swift化的需求,可以作为参考。 OC转Swift有一个大前提就是你要对Swift有一定的了解,熟悉Swift语法,最好是完整看过一遍官方的 Language Guide 。 转换的过程分自动化和手动转译,鉴于自动化工具的识别率不能让人满意,大部分情况都是需要手动转换的。 自动化工具 有一个比较好的自动化工具 Swiftify ,可以将OC文件甚至OC工程整个转成Swift,号称准确率能达到90%。我试用了一些免费版中的功能,但感觉效果并不理想,因为没有使用过付费版,所以也不好评价它就是不好。 Swiftify还有一个Xcode的插件 Swiftify for Xcode ,可以实现对选中代码和单文件的转化。这个插件还挺不错,对纯系统代码转化还算精确,但部分代码还存在一些识别问题,需要手动再修改。 手动Swift化 桥接文件 如果你是在项目中首次使用Swift代码,在添加Swift文件时,Xcode会提示你添加一个 .h 的桥接文件。如果不小心点了不添加还可以手动导入,就是自己手动生成一个 .h 文件,然后在 Build Settings > Swift Compiler - General

Python分析42年高考数据,告诉你高考为什么这么难?

狂风中的少年 提交于 2020-08-11 09:38:46
作者:徐麟 历年录取率 可能很多经历过高考的人都不知道高考的全称,高考实际上是普通高等学校招生全国统一考试的简称。从1977年国家恢复高考制度至今,高考经历了许多的改革,其中最为显著的变化就是录取率的显著提升,曾经的“千军万马过独木桥”的场景得到了一定程度的缓解。 我们首先看下1977-2018年历年的录取人数和未录取(落榜)人数变化情况,本文数据均来自于网络公开高考数据: 可以看到1977年恢复高考之后的几年,由于种种原因,高考人数到达了一个比较高的点,随后有所下降。到2000年之后,高考的人数有了进一步的提升,录取人数也随之大幅提升,2008、2009达到了顶峰,2010年之后参与高考的人数趋于平稳。 通过上图也可以发现,早期的高考难度之高,未录取人数是录取人数的数倍之多,而且早期的高考实际上在开始之前有预选的过程,能够参加高考的考生实际上已经经过了一轮大浪淘沙的过程。随着教育改革,越来越多的考生有机会通过高考接受更进一步的教育。 我们通过下面的百分比图,对于录取率的变化进一步加深认知: 部分代码如下: ``` setwd('D:/爬虫/高考') data = read_excel('历年录取率.xlsx') data_year = melt(data,id.vars = '年份',measure.vars = c('录取','未录取'), variable.name=

O2OA开源免费开发平台:自定义提交功能

陌路散爱 提交于 2020-08-11 08:14:57
功能介绍 当默认提交界面不能满足用户时候,可以使用本功能进行提交界面的定制。自定义提交功能基于表单和脚本实现。开发人员可以通过修改自定义界面的样式,添加或删除组件,设置提交选人框的高度、宽度和预定义的样式来实现界面的修改。该功能满足PC端提交界面和移动端界面的定制。 基本操作步骤 注:本章节和脚本相关的内容都是以自定义表单自带的脚本内容为准。 根据模板创建自定义提交表单 1、打开流程管理,并打开具体的流程应用设计 2、在表单视图,点新建表单,在弹出的模板中选择“自定义提交模板(PC)”或“自定义提交模板(Mobile)” 3、保存新建的表单。 4、提交界面执行的脚本在表单最后一个div的queryLod事件中执行。 在主表单中设置“提交表单” 1、打开流程主表单,并点击“提交”附签 2、在表单处选择上一步创建的提交表单,如果是所有的流程都使用同一个提交界面,可以选择对应应用。如果需要通过计算来使用提交界面,可以点击“计算表单”,并通过脚本返回对应的表单。 3、“提交(继续流转)操作脚本”填写“this.popupProcessor()”,如果是手机端填写“this.popupProcessorMobile()” 4、默认提交表单效果如下图: 在主表单中直接显示提交界面 系统还允许直接在主表单中直接显示提交界面,点击继续流转后可弹出提交界面。 1、执行上面小节的基础操作步骤。 2

PHP实现Redis单据锁以及防止并发重复写入

蹲街弑〆低调 提交于 2020-08-11 05:11:37
一、前言: 在整个供应链系统中,会有很多种单据(采购单、入库单、到货单、运单等等),在涉及写单据数据的接口时(增删改操作),即使前端做了相关限制,还是有可能因为网络或异常操作产生并发重复调用的情况,导致对相同单据做相同的处理; 为了防止这种情况对系统造成异常影响,我们通过Redis实现了一个简单的单据锁,每个请求需先获取锁才能执行业务逻辑,执行结束后才会释放锁;保证了同一单据的并发重复操作请求只有一个请求可以获取到锁(依赖Redis的单线程),是一种悲观锁的设计; 注:Redis锁在我们的系统中一般只用于解决并发重复请求的情况,对于非并发的的重复请求一般会去数据库或日志校验数据的状态,两种机制结合起来才能保证整个链路的可靠。 二、加锁机制: 主要依赖Redis setnx指令实现: 但使用setnx有一个问题,即setnx指令不支持设置过期时间,需要使用expire指令另行为key设置超时时间,这样整个加锁操作就不是一个原子性操作,有可能存在setnx加锁成功,但因程序异常退出导致未成功设置超时时间,在不及时解锁的情况下,有可能会导致死锁(即使业务场景中不会出现死锁,无用的key一直常驻内存也不是很好的设计); 这种情况可以使用Redis事务解决,把setnx与expire两条指令作为一个原子性操作执行,但这样做相对而言会比较麻烦,好在Redis 2.6.12之后版本,Redis

对于程序员, 为什么英语比数学更重要? 如何学习

白昼怎懂夜的黑 提交于 2020-08-11 05:09:23
>作者 谢恩铭,公众号「程序员联盟」(微信号:coderhub)。 转载请注明出处。 原文: http://www.jianshu.com/p/0194b98df6bc >程序员联盟群里经常有人问: 我数学不好可以学编程吗? 我英语不好可以学编程吗? >今天就来一次性回答这两个问题。 事先声明: 我绝对没有贬低数学对编程的重要性的意思 。 数学知识对于编程是很关键的,比如数据结构和算法的学习就得有较好的数学基础。好的数学思维也很有用。 这几年火热的 AI(人工智能)的学习更是离不开数学:概率论、微积分、线性代数,等等。 我这些年的体会是: 英语对于编程的(优先)助力比数学要大。所以要说优先级的话,首先过了英语这关再说 。 为什么这么说呢?很简单,有些编程不需要太多数学知识,但是英语却是避无可避。 除非你是用易语言编程(不过说实话,中文真的不适合用来写程序。英语的字母组成和特性决定了编程还真需要用英语),不然离不开英语。 对编程来说,学好英语有以下必要性: 对编程语言里的基本词汇敏感,便于理解意思。很多函数和变量名都是自注释的(也就是说光看名字就知道意思了),例如 isFinished() 函数,不懂英语的话就不知道是什么意思,如果会英语马上会知道是判断“是否结束”的函数。很多 API 或源码是没有注释的,因为函数名已经可以达意了,但不会英语你就看不懂。 能够为变量或函数起个好名字

SEPC:使用3D卷积从FPN中提取尺度不变特征,涨点神器 | CVPR 2020

柔情痞子 提交于 2020-08-11 04:53:39
> 论文提出PConv为对特征金字塔进行3D卷积,配合特定的iBN进行正则化,能够有效地融合尺度间的内在关系,另外,论文提出SEPC,使用可变形卷积来适应实际特征间对应的不规律性,保持尺度均衡。PConv和SEPC对SOTA的检测算法有显著地提升 ,并且没有带来过多的额外计算量   来源:晓飞的算法工程笔记 公众号 论文: Scale-Equalizing Pyramid Convolution for Object Detection 论文地址: https://arxiv.org/pdf/2005.03101.pdf 论文代码: https://github.com/jshilong/SEPC Introduction   特征金字塔是解决物体尺度问题的重要手段,但是不同level的特征图其实存在较大的语义差距。为了消除这些语义差距,很多研究专注于如何加强特征的融合,但这些研究大都直接将特征图缩放相加,没有很好地考虑特征金字塔的内在属性。受尺度空间理论(多尺度提取特征点)的启发,论文提出PConv(pyramid convolution),使用3-D卷积来关联相近的特征图,挖掘尺度间的相互作用。考虑到特征金字塔的层间特征变化较大,层间各点的对应无规律,论文提出SEPC(scale-equalizing pyramid convolution)对特征金字塔的高层特征进行可变形卷积