-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
201 lines (181 loc) · 27.7 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
<!DOCTYPE html><html lang="zh-CN" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><title>Sher</title><meta name="author" content="Sher Zhou"><meta name="copyright" content="Sher Zhou"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="ffffff"><meta property="og:type" content="website">
<meta property="og:title" content="Sher">
<meta property="og:url" content="https://sherzhou.github.io/project/index.html">
<meta property="og:site_name" content="Sher">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="https://sherzhou.github.io/project/img/avatar.jpg">
<meta property="article:author" content="Sher Zhou">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="https://sherzhou.github.io/project/img/avatar.jpg"><link rel="shortcut icon" href="/img/favicon1.png"><link rel="canonical" href="https://sherzhou.github.io/project/"><link rel="preconnect" href="//cdn.jsdelivr.net"/><link rel="preconnect" href="//busuanzi.ibruce.info"/><link rel="stylesheet" href="/css/index.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free/css/all.min.css" media="print" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.min.css" media="print" onload="this.media='all'"><script>const GLOBAL_CONFIG = {
root: '/',
algolia: undefined,
localSearch: undefined,
translate: undefined,
noticeOutdate: undefined,
highlight: {"plugin":"highlighjs","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":false},
copy: {
success: '复制成功',
error: '复制错误',
noSupport: '浏览器不支持'
},
relativeDate: {
homepage: false,
post: false
},
runtime: '',
date_suffix: {
just: '刚刚',
min: '分钟前',
hour: '小时前',
day: '天前',
month: '个月前'
},
copyright: undefined,
lightbox: 'fancybox',
Snackbar: undefined,
source: {
justifiedGallery: {
js: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.js',
css: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.css'
}
},
isPhotoFigcaption: false,
islazyload: false,
isAnchor: false
}</script><script id="config-diff">var GLOBAL_CONFIG_SITE = {
title: 'Sher',
isPost: false,
isHome: true,
isHighlightShrink: false,
isToc: false,
postUpdate: '2023-06-05 21:59:52'
}</script><noscript><style type="text/css">
#nav {
opacity: 1
}
.justified-gallery img {
opacity: 1
}
#recent-posts time,
#post-meta time {
display: inline !important
}
</style></noscript><script>(win=>{
win.saveToLocal = {
set: function setWithExpiry(key, value, ttl) {
if (ttl === 0) return
const now = new Date()
const expiryDay = ttl * 86400000
const item = {
value: value,
expiry: now.getTime() + expiryDay,
}
localStorage.setItem(key, JSON.stringify(item))
},
get: function getWithExpiry(key) {
const itemStr = localStorage.getItem(key)
if (!itemStr) {
return undefined
}
const item = JSON.parse(itemStr)
const now = new Date()
if (now.getTime() > item.expiry) {
localStorage.removeItem(key)
return undefined
}
return item.value
}
}
win.getScript = url => new Promise((resolve, reject) => {
const script = document.createElement('script')
script.src = url
script.async = true
script.onerror = reject
script.onload = script.onreadystatechange = function() {
const loadState = this.readyState
if (loadState && loadState !== 'loaded' && loadState !== 'complete') return
script.onload = script.onreadystatechange = null
resolve()
}
document.head.appendChild(script)
})
win.activateDarkMode = function () {
document.documentElement.setAttribute('data-theme', 'dark')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d')
}
}
win.activateLightMode = function () {
document.documentElement.setAttribute('data-theme', 'light')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', 'ffffff')
}
}
const t = saveToLocal.get('theme')
if (t === 'dark') activateDarkMode()
else if (t === 'light') activateLightMode()
const asideStatus = saveToLocal.get('aside-status')
if (asideStatus !== undefined) {
if (asideStatus === 'hide') {
document.documentElement.classList.add('hide-aside')
} else {
document.documentElement.classList.remove('hide-aside')
}
}
const detectApple = () => {
if(/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)){
document.documentElement.classList.add('apple')
}
}
detectApple()
})(window)</script><link rel="preconnect" href="https://gcore.jsdelivr.net/" /><meta name="generator" content="Hexo 5.4.2"></head><body><div id="web_bg"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="/img/avatar.jpg" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">8</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">3</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">2</div></a></div><hr/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 主页</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> 文档</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> 标签</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> 分类</span></a></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> 友链</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> 关于</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="full_page" id="page-header" style="background-image: url('https://gcore.jsdelivr.net/gh/SherZhou/pic_source/img/piday2022_insight.png')"><nav id="nav"><span id="blog_name"><a id="site-name" href="/">Sher</a></span><div id="menus"><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> 主页</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> 文档</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> 标签</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> 分类</span></a></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> 友链</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> 关于</span></a></div></div><div id="toggle-menu"><a class="site-page"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="site-info"><h1 id="site-title">Sher</h1><div id="site_social_icons"><a class="social-icon" href="https://github.com/SherZhou" target="_blank" title="Github"><i class="fab fa-github"></i></a><a class="social-icon" href="mailto:xianerr@hku.hk" target="_blank" title="Email"><i class="fas fa-envelope"></i></a></div></div><div id="scroll-down"><i class="fas fa-angle-down scroll-down-effects"></i></div></header><main class="layout" id="content-inner"><div class="recent-posts" id="recent-posts"><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2023/06/01/Restful-vs-WebSocket/" title="Restful vs WebSocket">Restful vs WebSocket</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-06-01T13:54:31.000Z" title="发表于 2023-06-01 21:54:31">2023-06-01</time></span></div><div class="content">在实习时需要进行实时交互,原先的C/S架构REST格式需要客户端重新发起请求,需改用WebSocket,稍微记录一下。
REST三种主流的Web服务实现方案,REST、SOAP、XML-RPC。
REST是根基于超文本传输协议(HTTP)之上而确定的一组约束和属性,是一种设计提供万维网络服务的软件构建风格。
REST通常基于使用HTTP,URI,和XML以及HTML这些现有的广泛流行的协议和标准。
资源是由URI来指定。
对资源的操作包括获取、创建、修改和删除资源,这些操作正好对应HTTP协议提供的GET、POST、PUT和DELETE方法。
客户-服务器(Client-Server)通信只能由客户端单方面发起,表现为请求-响应的形式。无状态(Stateless)通信的会话状态(Session State)应该全部由客户端负责维护。缓存(Cache)响应内容可以在通信链的某处被缓存,以改善网络效率。统一接口(Uniform Interface)通信链的组件之间通过统一的接口相互通信,以提高交互的可见性。分层系统(Layered System)通过限制组件的行为(即每个组件只能“看 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2023/06/01/%E5%AD%A6%E6%9C%9F%E6%80%BB%E7%BB%932/" title="学期总结2">学期总结2</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-06-01T13:52:46.000Z" title="发表于 2023-06-01 21:52:46">2023-06-01</time></span></div><div class="content">这学期一共四门课程
Radiation Detection and measurement这门课的内容主要是从辐射的角度,学习了不同波段测量宇宙的方法以及一些核辐射探测技术方法。复旦大学的这门课程给了我很多帮助:http://fdjpkc.fudan.edu.cn/201901/1xlyfsxclzdtjxjc/list.htm
我的学习会相对浅显一点。
Pattern Recognition and Machine Learning这门课是我较感兴趣的一门。从SVM和perceptron开始,再到贝叶斯分析和判别,非参数方法(KNN&Parzen Window)和聚类方法(Kmeans&hierarchy cluster),最后是神经网络。让我对机器学习的发展历程有了更清楚的了解。SVM和perceptron的对比是重点,他们不同的Objective function和相应的解法影响着他们的运用。
Big Data and AI这门课除了上学期重点讲过的正则化、梯度下降与反向传播外,了解了dropout以及Boosting method & Bagging m ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2023/01/16/%E5%AD%A6%E6%9C%9F%E6%80%BB%E7%BB%93/" title="学期总结">学期总结</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-01-16T04:21:01.000Z" title="发表于 2023-01-16 12:21:01">2023-01-16</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%9D%82%E8%AE%B0/">杂记</a></span></div><div class="content">又开学了,记录一下上学期的学习。
一共有五门课程,分别是Computational physics, Space weather, Data analysis in space science, Remote sensing, Space science entrepreneurship。
Computational physics课程URL:https://quantummc.xyz/teaching/hku-phys4150-8150-2022/
课程内容本身自己比较感兴趣而且能感受到老师本人对学科的热爱。
主要介绍了一些常用的数值计算方法以及对应在物理中的运用,从导数,偏导到矩阵特征值和蒙特卡洛。对我而言课程的难点和兴趣点均在对物理问题的理解。初次了解物理独有的算符、粒子自旋、哈密顿量、薛定谔方程……
能有机会得以在物理大门的门口进行窥探也很不错,有点后悔没有选《相对论》,物理的学习门槛有点高,如果不是课程一步步的辅导,自学可能会很困难。
Space weather主要内容是太阳内部结构和外部环境以及地球大气层。电磁学复健中。了解到了太阳到地球之间的物理状况,以及太阳活动对地球的 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/12/28/Pandas%E5%B8%B8%E7%94%A8%E6%80%BB%E7%BB%93/" title="Pandas常用总结">Pandas常用总结</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-12-28T11:43:23.000Z" title="发表于 2022-12-28 19:43:23">2022-12-28</time></span></div><div class="content">pandas常用句做研究助理的过程中使用pandas做数据分析比较多,记录下使用最频繁的语句。
输入输出123456# txt:read_table# xlsx,xls:read_excel# csv:read_csvpd=pd.read_excel('/content/drive/MyDrive/notebook/socio/input/lbs.xlsx')tmp.to_excel('/content/drive/MyDrive/notebook/socio/output/tmp.xlsx')
12345678910111213141516171819202122232425262728293031323334353637383940from google.colab import drivedrive.mount('/content/drive')#renametest.rename(columns={'终点ID':'起点网格ID'}, inplace = Tr ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/11/28/%E6%B5%8B%E8%AF%95%E6%96%B9%E6%B3%95/" title="测试方法">测试方法</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-11-27T18:04:36.000Z" title="发表于 2022-11-28 02:04:36">2022-11-28</time></span></div><div class="content">最近师姐在设计调查问卷,稍微了解了一下两种试验/测试方法
正交表法OATS(Orthogonal Array Testing Strategy)
根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点。
日本统计学家田口玄一将正交试验选择的水平组合列成表格,称为正交表
正交原理
围绕“均匀分散,齐整可比”的特点,实现(1)每列中不同数字出现次数相等。表明每个因素的每个水平与其它因素的每个水平参与试验的几率是完全相同的(2)在任意两列其横向组成数字对中,每种数字对出现次数相等。保证了试验点均匀地分散在因素与水平的完全组合之中。
Example: 现在有一个组合有三因子,每个因子是三水平,权且用如下方式进行表示A(A1,A2,A3),B(B1,B2,B3),C(C1,C2,C3),在左图的正方体中每个因子的每个水平代表的是一个面,共九个面,任意两个因子的水平之间都存在交点,共27(3x3x3)个,这就是笛卡尔积。按照两大特性设计出的正交表如右图所示,试验点用⊙表示。我们看到,在9个平面中每个平面上都恰好有三个点而每个平面的每行每列都有一个点 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/10/04/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/" title="单元测试">单元测试</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-10-04T15:23:40.000Z" title="发表于 2022-10-04 23:23:40">2022-10-04</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/java/">java</a></span></div><div class="content">JUnit5JUnit是最早接触也是最被熟知的Java单元测试框架https://junit.org/junit5/docs/current/user-guide/#overview
mockito4https://javadoc.io/doc/org.mockito/mockito-core/latest/org/mockito/Mockito.html
使用过程中区分@Mock与@injectMocks@InjectMocks: 创建一个实例,简单的说是这个Mock可以调用真实代码的方法其余用@Mock(或@Spy)注解创建的mock将被注入到用该实例中。请注意:必须使用@RunWith(MockitoJUnitRunner.class)或Mockito.initMocks(this)初始化这些模拟并注入它们。
MockMvc在对Controller进行测试时,希望能够通过输入URL对Controller进行测试,如果通过启动服务器,建立http client进行测试,这样会使得测试变得很麻烦,比如,启动速度慢,测试验证不方便,依赖网络环境等引入了MockMVC对Controlle ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/10/04/PR%E6%B5%81%E7%A8%8B/" title="PR流程">PR流程</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-10-03T17:55:14.000Z" title="发表于 2022-10-04 01:55:14">2022-10-04</time></span></div><div class="content">ps: 本次操作以Seata为源仓库
三阶段
准备仓库fork项目进入源项目页面,点击右上角Fork按钮
会自动生成以自己名称命名的项目
clone到本地即将自己名称下的项目下载到本地
12git clone https://github.com/(your_github_name)/(upstream_project_name).gitcd upstream_project_name
设置remote与源远程仓库建立联系
1git remote add upstream https://github.com/...(source_project_address)
查看联系
1git remote -v
可以看到自己的仓库地址(origin )与源仓库地址(upstream)
编译项目(非必须)编译并安装所有模块到Maven本地仓库缓存,同时会生成ANTLR.g4语法文件对应的解析器Java类,这样在IDE就不会有相关编译错误。
123cd upstream_project_name#我一般只跳过checkstyle和Testsmvn clean install -Dmav ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/07/28/%E4%BA%8B%E5%8A%A1%E4%B9%8BMySQL%E4%B8%8ESpring/" title="事务之MySQL与Spring">事务之MySQL与Spring</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-07-27T17:09:09.000Z" title="发表于 2022-07-28 01:09:09">2022-07-28</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/java/">java</a></span></div><div class="content">前请提要事务的ACID特性:原子性(atomicity,或称不可分割性)、一致性(consistency)、隔离性(isolation,又称独立性)、持久性(durability)事务隔离级别(读未提交,读已提交,可重复读,序列化)CAP理论:一致性(Consistency)、可用性(Availability)、分区容忍性(Partition Tolerance)
MySQL事务实现原理Redo Log负责原子性与持久性,记载对磁盘上数据进行的修改操作作用:恢复提交后的物理数据页构成:日志缓冲(内存) – 易失重做日志文件(磁盘)– 持久化 不易失刷盘规则: (1)开启事务,发出提交事务指令后是否刷新日志由innodb_flush_log_at_trx_commit决定,默认1(每次提交事务都将日志缓冲中日志写入OS buffer,并且调用fsync()写入磁盘文件,不会丢失数据)0、1、2的值影响写入OS buffer与写入磁盘文件是否需要隔1s(2)按频率刷新。刷新频率由innodb_flush_log_at_timeout决定,默认1s(3)Log Buffer使用内存& ...</div></div></div><nav id="pagination"><div class="pagination"><span class="page-number current">1</span></div></nav></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="/img/avatar.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">Sher Zhou</div><div class="author-info__description"></div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">8</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">3</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">2</div></a></div><div class="card-info-social-icons is-center"><a class="social-icon" href="https://github.com/SherZhou" target="_blank" title="Github"><i class="fab fa-github"></i></a><a class="social-icon" href="mailto:xianerr@hku.hk" target="_blank" title="Email"><i class="fas fa-envelope"></i></a></div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2023/06/01/Restful-vs-WebSocket/" title="Restful vs WebSocket">Restful vs WebSocket</a><time datetime="2023-06-01T13:54:31.000Z" title="发表于 2023-06-01 21:54:31">2023-06-01</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2023/06/01/%E5%AD%A6%E6%9C%9F%E6%80%BB%E7%BB%932/" title="学期总结2">学期总结2</a><time datetime="2023-06-01T13:52:46.000Z" title="发表于 2023-06-01 21:52:46">2023-06-01</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2023/01/16/%E5%AD%A6%E6%9C%9F%E6%80%BB%E7%BB%93/" title="学期总结">学期总结</a><time datetime="2023-01-16T04:21:01.000Z" title="发表于 2023-01-16 12:21:01">2023-01-16</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/12/28/Pandas%E5%B8%B8%E7%94%A8%E6%80%BB%E7%BB%93/" title="Pandas常用总结">Pandas常用总结</a><time datetime="2022-12-28T11:43:23.000Z" title="发表于 2022-12-28 19:43:23">2022-12-28</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/11/28/%E6%B5%8B%E8%AF%95%E6%96%B9%E6%B3%95/" title="测试方法">测试方法</a><time datetime="2022-11-27T18:04:36.000Z" title="发表于 2022-11-28 02:04:36">2022-11-28</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
<i class="fas fa-folder-open"></i>
<span>分类</span>
</div>
<ul class="card-category-list" id="aside-cat-list">
<li class="card-category-list-item "><a class="card-category-list-link" href="/categories/java/"><span class="card-category-list-name">java</span><span class="card-category-list-count">2</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E6%9D%82%E8%AE%B0/"><span class="card-category-list-name">杂记</span><span class="card-category-list-count">1</span></a></li>
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/tags/Python/" style="font-size: 1.1em; color: #999">Python</a> <a href="/tags/git/" style="font-size: 1.1em; color: #999">git</a> <a href="/tags/%E4%BA%8B%E5%8A%A1/" style="font-size: 1.1em; color: #999">事务</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2023/06/"><span class="card-archive-list-date">六月 2023</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2023/01/"><span class="card-archive-list-date">一月 2023</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/12/"><span class="card-archive-list-date">十二月 2022</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/11/"><span class="card-archive-list-date">十一月 2022</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/10/"><span class="card-archive-list-date">十月 2022</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/07/"><span class="card-archive-list-date">七月 2022</span><span class="card-archive-list-count">1</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站资讯</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">8</div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站总访问量 :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2023-06-05T13:59:52.251Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer" style="background-image: url('https://gcore.jsdelivr.net/gh/SherZhou/pic_source/img/piday2022_insight.png')"><div id="footer-wrap"><div class="copyright">©2020 - 2023 By Sher Zhou</div><div class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside_config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><i class="fas fa-arrow-up"></i></button></div></div><div><script src="/js/utils.js"></script><script src="/js/main.js"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.umd.min.js"></script><div class="js-pjax"></div><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc/dist/activate-power-mode.min.js"></script><script>POWERMODE.colorful = true;
POWERMODE.shake = true;
POWERMODE.mobile = false;
document.body.addEventListener('input', POWERMODE);
</script><script async data-pjax src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script></div></body></html>