- Python Cookbook-1.13 访问子字符串
我不会编程555
#Python学习python开发语言
任务获取字符串的某个部分。解决方案切片是个好方法,但是它一次只能取得一个字段;如果还考虑字段的长度,struct.unpack可能更适合。importstructdeffields(baseformat,theline,lastfield=False):#theline超出的长度也由这个base-format确定#(通过struct.calcsize计算确切的长度)numremain=len(th
- python 学习路线
Coding Happily
python学习windows
学习顺序《python编程:从入门到实践》《Head-FirstPython》《“笨方法”学python3》《PythonCookbook》《Python机器学习基础教程》《FluentPython》《Python编程》《Python编程:从入门到实践》变量变量命名:仅用小写和下划线。变量本质:指向特定的值。字符串在字符串中使用变量:f’{varies1}{varies2}’更早版本:‘{}{}’
- Python Cookbook-1.10 过滤字符串中不属于指定集合的字符
我不会编程555
#Python学习python开发语言
任务给定一个需要保留的字符的集合,构建一个过滤函数,并可将其应用于任何字符串s,函数返回一个s的拷贝,该拷贝只包含指定字符集合中的元素。解决方案对于此类问题,string对象的translate方法是又快又好用的工具。不过,为了有效地使用translate来解决问题,事先我们必须做一些准备工作。传递给translate的第一个参数是一个翻译表:在本节中,我们其实不需要什么翻译,所以我们必须准备一个
- AWS 开始指南:从入门到实践
韶格珍
AWS开始指南:从入门到实践Getting-StartedGettingStartedwiththeAWSCookbook项目地址:https://gitcode.com/gh_mirrors/gettings/Getting-Started项目介绍AWSCookBook-GettingStarted是一个专为开发者设计的开源项目,旨在提供一系列简洁明了的指南,帮助用户快速理解和上手AmazonW
- C++20 STL CookBook 4:使用range在容器中创建view
charlie114514191
现代C++笔记杂谈系列c++20c++开发语言
目录rangeviewrange_adaptor的三个概念以std::string和std::string_view为例子初次入手补充ranges的一些操作rangeviewrange_adaptor的三个概念新的范围库是C++20中更重要的新增功能之一。它为过滤和处理容器提供了新的范例。范围为更有效和可读的代码提供了简洁直观的构建块。在rangeview编程当中,三个概念是vitalofimpo
- Hugging Face Transformers and Meta Llama
Yongqiang Cheng
LargeLanguageModel(LLM)HuggingFaceTransformersMetaLlama
HuggingFaceTransformersandMetaLlama1.Transformers1.1.`src/transformers/models`1.2.`src/transformers/models/llama`2.MetaLlama2.1.Llama32.2.Llama22.3.LlamaCookbook:TheOfficialGuidetobuildingwithLlamaMod
- 图解数据结构python读书笔记_python cookbook3读书笔记第一章数据结构和算法
eternal?
pythonheapq模块查询一组序列中最大和最小的数据importheapqnums=[1,8,2,23,7,-4,18,23,42,37,]#获取序列中3个最大值#print(heapq.nlargest(3,nums))#获取序列中3个最小值#print(heapq.nsmallest(3,nums))#把数据压入堆中在堆中最小的那个数值永远排在最前面时间想取出最小的3个数值只需执行3次he
- python cookbook第二章笔记
czm123
2.1使用多个界定符分割字符串你需要将一个字符串分割成多个字段,但是分隔符(还有周围的空格)并不是固定的string对象的split()方法只适应于非常简单的字符串分割情形,它并不允许有多个分隔符或者是分隔符周围不确定的空格。当你需要更加灵活的切割字符串的时候,最好使用re.split()方法:>>>line='asdffjdk;afed,fjek,asdf,foo'>>>importre>>>r
- 显示当前的所有FreeRTOS任务,ESP-IDF FreeRTOS Cookbook
盼望孤独的二进制
c++c语言开发语言物联网嵌入式硬件
#include#include“esp_log.h”#include“freertos/FreeRTOS.h”#include“freertos/task.h”/*task_list()显示当前的所有FreeRTOS任务使用前,请在menuconfig中启动EnableFreeRTOStracefacilityEnableFreeRTOSstatsformattingfunctions/void
- 从零开始 TensorRT(3)Python 篇:解析 ONNX、PyTorch TensorRT 接口
秋山丶雪绪
TensorRTpythonpytorchTensorRT
前言学习资料:TensorRT源码示例官方文档:WorkingWithTensorRTUsingThePythonAPI官方文档:TensorRTPython官方文档:CUDAPythonB站视频教程视频配套代码cookbook示例:解析ONNX模型参考源码:cookbook→04-BuildEngineByONNXParser→pyTorch-ONNX-TensorRT源码 cookbook中
- 从零开始 TensorRT(2)Python 篇:原生 API 构建网络
秋山丶雪绪
TensorRTpythonTensorRTpycharm
前言学习资料:TensorRT源码示例官方文档:WorkingWithTensorRTUsingThePythonAPI官方文档:TensorRTPythonAPI官方文档:CUDAPythonB站视频:TensorRT教程|基于8.6.1版本B站视频配套代码cookbook 在Python篇中会仿照视频教程中的内容,按以下顺序介绍:(1)TensorRT原生API构建网络:示例中使用Tenso
- 从零开始 TensorRT(4)命令行工具篇:trtexec 基本功能
秋山丶雪绪
TensorRTTensorRTtrtexec
前言学习资料:TensorRT源码示例B站视频:TensorRT教程|基于8.6.1版本视频配套代码cookbook参考源码:cookbook→07-Tool→trtexec官方文档:trtexec在TensorRT的安装目录xxx/TensorRT-8.6.1.6/bin下有命令行工具trtexec,主要功能:(1)由ONNX文件生成TensorRT引擎并序列化为plan文件(2)查看ONNX或
- 零基础学Python,最受推荐的10本Python书籍
Python_入门教程
Python学习Python入门python学习python入门
目录适合初学者的最佳Python书籍1、《Python编程:从入门到实践》2、《Head-FirstPython(2ndedition)》3、《“笨方法”学Python》4、《Python程序设计(第3版)》最适合初学者的免费Python书籍5、《像计算机科学家一样思考Python(第2版)》6、《AByteofPython》适合中高级程序员的Python书籍7、《PythonCookbook(第
- Odoo 12开发者指南第二章 管理Odoo服务器实例
AlanHou
全书完整目录请见:Odoo12开发者指南(Cookbook)第三版本章中,我们将讲解如下内容:配置插件路径更新插件模块列表标准化你的实例目录布局安装并升级本地插件模块对插件应用修改应用及尝试建议的拉取请求引言在第一章安装Odoo开发环境中,我们学习了如何使用与编辑器一同发布的标准核心插件来设置Odoo实例。本章集中讲解为Odoo实例添加非核心插件。Odoo中,可以从多个目录中加载插件。此外,推荐将
- [NCTF2019]Fake XML cookbook
吃泡面不喝汤
xml安全
BUUCTF刷题[NCTF2019]FakeXMLcookbookBUUCTF刷题前言一、[NCTF2019]FakeXMLcookbook总结前言通过刷题拓宽自己的知识面一、[NCTF2019]FakeXMLcookbook(1)打开后如图所示(2)尝试了一下万能密码,没啥用。回到题目,XML,百度一波。XML被设计用来传输和存储数据。HTML被设计用来显示数据。XML指可扩展标记语言(eXte
- NCTF2019 Fake XML cookbook
Tajang
CTFxml前端CTF
打开靶机如图:蒙了几个username和password都显示错误,看来没有太多提示了。既然题目提示了XML那就百度一波。已知晓XML存在实体注入,引入实体文件,然后读取它就完成注入了。我们抓包看看存不存在相关XML语句。如下:发现使用XML存储username和password。将内容发送至Repeater,然后写入恶意实体,注意这里是使用file://协议读取flag文件,并且将这个文件赋给a
- [NCTF2019]Fake XML cookbook(特详解)
小小邵同学
xml网络安全
先试了一下弱口令,哈哈习惯了查看页面源码发现xmlfunctiondoLogin(){varusername=$("#username").val();varpassword=$("#password").val();if(username==""||password==""){alert("Pleaseentertheusernameandpassword!");return;}vardata=
- python3-cookbook-查找两字典的相同点
北方骑马的萝卜
python开发语言
第一章:数据结构和算法Python提供了大量的内置数据结构,包括列表,集合以及字典。大多数情况下使用这些数据结构是很简单的。但是,我们也会经常碰到到诸如查询,排序和过滤等等这些普遍存在的问题。因此,这一章的目的就是讨论这些比较常见的问题和算法。另外,我们也会给出在集合模块collections当中操作这些数据结构的方法。参考:https://python3-cookbook.readthedocs
- python3-cookbook-字典的运算
北方骑马的萝卜
python开发语言
第一章:数据结构和算法Python提供了大量的内置数据结构,包括列表,集合以及字典。大多数情况下使用这些数据结构是很简单的。但是,我们也会经常碰到到诸如查询,排序和过滤等等这些普遍存在的问题。因此,这一章的目的就是讨论这些比较常见的问题和算法。另外,我们也会给出在集合模块collections当中操作这些数据结构的方法。参考:https://python3-cookbook.readthedocs
- python3-cookbook-字典中的键映射多个值
北方骑马的萝卜
python开发语言
第一章:数据结构和算法Python提供了大量的内置数据结构,包括列表,集合以及字典。大多数情况下使用这些数据结构是很简单的。但是,我们也会经常碰到到诸如查询,排序和过滤等等这些普遍存在的问题。因此,这一章的目的就是讨论这些比较常见的问题和算法。另外,我们也会给出在集合模块collections当中操作这些数据结构的方法。参考:https://python3-cookbook.readthedocs
- python3-cookbook-字典排序
北方骑马的萝卜
python
第一章:数据结构和算法Python提供了大量的内置数据结构,包括列表,集合以及字典。大多数情况下使用这些数据结构是很简单的。但是,我们也会经常碰到到诸如查询,排序和过滤等等这些普遍存在的问题。因此,这一章的目的就是讨论这些比较常见的问题和算法。另外,我们也会给出在集合模块collections当中操作这些数据结构的方法。参考:https://python3-cookbook.readthedocs
- 2018-11-28
wangyou2550
python书籍入门:python基础教程第二版,笨方法学python进阶:流畅的python,effictivepython,Python编程实战,编写高质量代码:python,python核心编程第三版,PythonCookbook中文版第3版计算:python科学计算,利用Python进行数据分析前端:FlaskWeb开发:基于Python的Web应用开发实战,DjangoWeb开发指南网络
- 【读书笔记】《利用Python进行数据分析》第2版_第二章:Python语言基础、IPython及Jupyternotebook
is_colorful
pythonpythonpytorch深度学习
推荐使用IPython命令行和Jupyternotebook来实验代码示例,以及探索各种类型、函数和方法的文档。和其他键盘控制的命令行环境一样,练就常用命令的肌肉记忆也是学习曲线的一部分。优秀Python书籍推荐《PythonCookbook》(第3版),作者为DavidBeazley和BrianK.Jones(O’Reilly)《FluentPython》,作者为LucianoRamalho(O
- JVM问题排查手册
wtopps
深入理解JVM虚拟机开发语言javajvm
三万字长文:JVM内存问题排查Cookbook一、Heap快照#jmap命令保存整个Java堆(在你dump的时间不是事故发生点的时候尤其推荐)jmap-dump:format=b,file=heap.bin#jmap命令只保存Java堆中的存活对象,包含live选项,会在堆转储前执行一次FullGCjmap-dump:live,format=b,file=heap.bin#jcmd命令保存整个J
- 非官方 Bevy 作弊书02-03
zhanglz888
bevy学习bevy学习
BevyCookbook-UnofficialBevyCheatBook源于上述网页,个人用有道进行翻译,希望对大家有所帮助非官方Bevy作弊书2bevy食谱本章向您展示如何使用Bevy做各种实际的事情。每个页面都专注于一个特定问题,并提供解释和示例代码来教您如何解决它。假设您已经熟悉Bevy编程。您还应该查看Bevy的官方示例集。引擎的几乎每个区域都有一些东西,尽管它们通常只显示API的简单用法
- 【运维】Docker 基本使用教程 dockerhub cookbook
XD742971636
Dockerdockernvidiadockerhub教程cookbook
Docker入门指南文章目录Docker入门指南参考总览Docker安装centOS安装Ubuntu安装方式镜像命令容器命令从压缩包加载镜像容器>>镜像>>压缩包清除掉状态是停止的容器参考菜鸟教程:Docker教程狂神Docker笔记:链接总览Docker的入门重点包括镜像命令学习、容器命令学习,之后学习compose、网络。下面是关于Docker的一些图示:Docker安装centOS安装#1.
- Concurrency in CSharp Cookbook中文翻译 第七章Testing测试
自己的九又四分之三站台
#ConcurrencyinC#CookbookC#
Testingisanessentialpartofsoftwarequality.Unittestingadvocateshavebecomecommoninrecentyears;itseemsthatyoureadorhearaboutiteverywhere.Somepromotetest-drivendevelopment,astyleofcodingthatensuresyouhave
- Python语言的学习路线规划建议 从入门到熟练掌握,进阶到精通之路
陈序不懂程序
python学习开发语言
入门阶段必看书籍《Python编程:从入门到实践》必看网站PythoncookbookPythonCookbook3rdEditionDocumentation必看官方文档https://docs.python.org/zh-cn/3.8/tutorial/index.html照着教材敲代码练习与思考熟练掌握通读Python标准库文档https://docs.python.org/zh-cn/3/
- openai模型个性化训练Embedding和fine-tuning区别
程序员老狼
人工智能机器学习
现在基于自然语言和文档进行对话的背后都是使用的基于嵌入的向量搜索。OpenAI在这方面做的很好,它的Cookbook(github.com/openai/openai-cookbook)上有很多案例,最近他们对文档做了一些更新。GPT擅长回答问题,但是只能回答它以前被训练过的问题,如果是没有训练过的数据,比如一些私有数据或者最新的数据该怎么办呢?这种情况下通常有两种办法,一种是微调(fine-tu
- [2017专题] 前端安全
weixin_34114823
前端爬虫数据库ViewUI
过往专题搬运。前端安全开发视角反击爬虫,前端工程师的脑洞可以有多大?预防竞争对手用爬虫进行的信息抓取,我们除了可以在后端进行图灵测试,也可以前端在DOM处做手脚来混淆爬虫。前端防御之CSP详解针对XSS的前端防御,本文作者介绍了CSP的作用与绕过方式,最后给出结论:黑名单配合CSP仍然是最靠谱的防御方式。点击劫持小抄介绍了预防点击劫持的多个方案汇总。XSSCookBook介绍了XSS的3个分类与2
- Algorithm
香水浓
javaAlgorithm
冒泡排序
public static void sort(Integer[] param) {
for (int i = param.length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
int current = param[j];
int next = param[j + 1];
- mongoDB 复杂查询表达式
开窍的石头
mongodb
1:count
Pg: db.user.find().count();
统计多少条数据
2:不等于$ne
Pg: db.user.find({_id:{$ne:3}},{name:1,sex:1,_id:0});
查询id不等于3的数据。
3:大于$gt $gte(大于等于)
&n
- Jboss Java heap space异常解决方法, jboss OutOfMemoryError : PermGen space
0624chenhong
jvmjboss
转自
http://blog.csdn.net/zou274/article/details/5552630
解决办法:
window->preferences->java->installed jres->edit jre
把default vm arguments 的参数设为-Xms64m -Xmx512m
----------------
- 文件上传 下载 解析 相对路径
不懂事的小屁孩
文件上传
有点坑吧,弄这么一个简单的东西弄了一天多,身边还有大神指导着,网上各种百度着。
下面总结一下遇到的问题:
文件上传,在页面上传的时候,不要想着去操作绝对路径,浏览器会对客户端的信息进行保护,避免用户信息收到攻击。
在上传图片,或者文件时,使用form表单来操作。
前台通过form表单传输一个流到后台,而不是ajax传递参数到后台,代码如下:
<form action=&
- 怎么实现qq空间批量点赞
换个号韩国红果果
qq
纯粹为了好玩!!
逻辑很简单
1 打开浏览器console;输入以下代码。
先上添加赞的代码
var tools={};
//添加所有赞
function init(){
document.body.scrollTop=10000;
setTimeout(function(){document.body.scrollTop=0;},2000);//加
- 判断是否为中文
灵静志远
中文
方法一:
public class Zhidao {
public static void main(String args[]) {
String s = "sdf灭礌 kjl d{';\fdsjlk是";
int n=0;
for(int i=0; i<s.length(); i++) {
n = (int)s.charAt(i);
if((
- 一个电话面试后总结
a-john
面试
今天,接了一个电话面试,对于还是初学者的我来说,紧张了半天。
面试的问题分了层次,对于一类问题,由简到难。自己觉得回答不好的地方作了一下总结:
在谈到集合类的时候,举几个常用的集合类,想都没想,直接说了list,map。
然后对list和map分别举几个类型:
list方面:ArrayList,LinkedList。在谈到他们的区别时,愣住了
- MSSQL中Escape转义的使用
aijuans
MSSQL
IF OBJECT_ID('tempdb..#ABC') is not null
drop table tempdb..#ABC
create table #ABC
(
PATHNAME NVARCHAR(50)
)
insert into #ABC
SELECT N'/ABCDEFGHI'
UNION ALL SELECT N'/ABCDGAFGASASSDFA'
UNION ALL
- 一个简单的存储过程
asialee
mysql存储过程构造数据批量插入
今天要批量的生成一批测试数据,其中中间有部分数据是变化的,本来想写个程序来生成的,后来想到存储过程就可以搞定,所以随手写了一个,记录在此:
DELIMITER $$
DROP PROCEDURE IF EXISTS inse
- annot convert from HomeFragment_1 to Fragment
百合不是茶
android导包错误
创建了几个类继承Fragment, 需要将创建的类存储在ArrayList<Fragment>中; 出现不能将new 出来的对象放到队列中,原因很简单;
创建类时引入包是:import android.app.Fragment;
创建队列和对象时使用的包是:import android.support.v4.ap
- Weblogic10两种修改端口的方法
bijian1013
weblogic端口号配置管理config.xml
一.进入控制台进行修改 1.进入控制台: http://127.0.0.1:7001/console 2.展开左边树菜单 域结构->环境->服务器-->点击AdminServer(管理) &
- mysql 操作指令
征客丶
mysql
一、连接mysql
进入 mysql 的安装目录;
$ bin/mysql -p [host IP 如果是登录本地的mysql 可以不写 -p 直接 -u] -u [userName] -p
输入密码,回车,接连;
二、权限操作[如果你很了解mysql数据库后,你可以直接去修改系统表,然后用 mysql> flush privileges; 指令让权限生效]
1、赋权
mys
- 【Hive一】Hive入门
bit1129
hive
Hive安装与配置
Hive的运行需要依赖于Hadoop,因此需要首先安装Hadoop2.5.2,并且Hive的启动前需要首先启动Hadoop。
Hive安装和配置的步骤
1. 从如下地址下载Hive0.14.0
http://mirror.bit.edu.cn/apache/hive/
2.解压hive,在系统变
- ajax 三种提交请求的方法
BlueSkator
Ajaxjqery
1、ajax 提交请求
$.ajax({
type:"post",
url : "${ctx}/front/Hotel/getAllHotelByAjax.do",
dataType : "json",
success : function(result) {
try {
for(v
- mongodb开发环境下的搭建入门
braveCS
运维
linux下安装mongodb
1)官网下载mongodb-linux-x86_64-rhel62-3.0.4.gz
2)linux 解压
gzip -d mongodb-linux-x86_64-rhel62-3.0.4.gz;
mv mongodb-linux-x86_64-rhel62-3.0.4 mongodb-linux-x86_64-rhel62-
- 编程之美-最短摘要的生成
bylijinnan
java数据结构算法编程之美
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
public class ShortestAbstract {
/**
* 编程之美 最短摘要的生成
* 扫描过程始终保持一个[pBegin,pEnd]的range,初始化确保[pBegin,pEnd]的ran
- json数据解析及typeof
chengxuyuancsdn
jstypeofjson解析
// json格式
var people='{"authors": [{"firstName": "AAA","lastName": "BBB"},'
+' {"firstName": "CCC&
- 流程系统设计的层次和目标
comsci
设计模式数据结构sql框架脚本
流程系统设计的层次和目标
 
- RMAN List和report 命令
daizj
oraclelistreportrman
LIST 命令
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可
- 二叉树:红黑树
dieslrae
二叉树
红黑树是一种自平衡的二叉树,它的查找,插入,删除操作时间复杂度皆为O(logN),不会出现普通二叉搜索树在最差情况时时间复杂度会变为O(N)的问题.
红黑树必须遵循红黑规则,规则如下
1、每个节点不是红就是黑。 2、根总是黑的 &
- C语言homework3,7个小题目的代码
dcj3sjt126com
c
1、打印100以内的所有奇数。
# include <stdio.h>
int main(void)
{
int i;
for (i=1; i<=100; i++)
{
if (i%2 != 0)
printf("%d ", i);
}
return 0;
}
2、从键盘上输入10个整数,
- 自定义按钮, 图片在上, 文字在下, 居中显示
dcj3sjt126com
自定义
#import <UIKit/UIKit.h>
@interface MyButton : UIButton
-(void)setFrame:(CGRect)frame ImageName:(NSString*)imageName Target:(id)target Action:(SEL)action Title:(NSString*)title Font:(CGFloa
- MySQL查询语句练习题,测试足够用了
flyvszhb
sqlmysql
http://blog.sina.com.cn/s/blog_767d65530101861c.html
1.创建student和score表
CREATE TABLE student (
id INT(10) NOT NULL UNIQUE PRIMARY KEY ,
name VARCHAR
- 转:MyBatis Generator 详解
happyqing
mybatis
MyBatis Generator 详解
http://blog.csdn.net/isea533/article/details/42102297
MyBatis Generator详解
http://git.oschina.net/free/Mybatis_Utils/blob/master/MybatisGeneator/MybatisGeneator.
- 让程序员少走弯路的14个忠告
jingjing0907
工作计划学习
无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是一名软件开发人员所学到的经验,希望能对大家有所帮助
1.不要害怕在工作中学习。
只要有电脑,就可以通过电子阅读器阅读报纸和大多数书籍。如果你只是做好自己的本职工作以及分配的任务,那是学不到很多东西的。如果你盲目地要求更多的工作,也是不可能提升自己的。放
- nginx和NetScaler区别
流浪鱼
nginx
NetScaler是一个完整的包含操作系统和应用交付功能的产品,Nginx并不包含操作系统,在处理连接方面,需要依赖于操作系统,所以在并发连接数方面和防DoS攻击方面,Nginx不具备优势。
2.易用性方面差别也比较大。Nginx对管理员的水平要求比较高,参数比较多,不确定性给运营带来隐患。在NetScaler常见的配置如健康检查,HA等,在Nginx上的配置的实现相对复杂。
3.策略灵活度方
- 第11章 动画效果(下)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- FAQ - SAP BW BO roadmap
blueoxygen
BOBW
http://www.sdn.sap.com/irj/boc/business-objects-for-sap-faq
Besides, I care that how to integrate tightly.
By the way, for BW consultants, please just focus on Query Designer which i
- 关于java堆内存溢出的几种情况
tomcat_oracle
javajvmjdkthread
【情况一】:
java.lang.OutOfMemoryError: Java heap space:这种是java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环; 如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决: <jvm-arg>-Xms3062m</jvm-arg> <jvm-arg>-Xmx
- Manifest.permission_group权限组
阿尔萨斯
Permission
结构
继承关系
public static final class Manifest.permission_group extends Object
java.lang.Object
android. Manifest.permission_group 常量
ACCOUNTS 直接通过统计管理器访问管理的统计
COST_MONEY可以用来让用户花钱但不需要通过与他们直接牵涉的权限
D