自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xuejianbest的专栏

技术分享 偶有心得

  • 博客(563)
  • 论坛 (11)
  • 收藏
  • 关注

原创 python:24点程序

这里有实现方法,包括使用eval的方法:https://github.com/xuejianbest/compute24point下面是使用递归算法的穷举实现:# 穷举2个数的+、-、*、/运算及其结果def c(t): a = t[0][0] b = t[1][0] aa = t[0][1] bb = t[1][1] if a == 0 and b == 0: return [(0, '{}+{}'.format(aa,bb))] i

2021-03-03 14:56:48 41

原创 VBScript:读写文件、计算md5值、base64加解密

程序示例包括:读取及写入文本文件、二进制文件计算文件md5对文件进行base64编解码'读文件,输出stringFunction readTextFile(strPath) Dim oFSO: Set oFSO = CreateObject("Scripting.FileSystemObject") Dim oFile: Set oFile = oFSO.GetFile(strPath) If IsNull(oFile) Then MsgBox("File not found: "

2021-02-07 15:03:59 41

原创 VBScript:获取并改变鼠标相对位置

运行此脚本需要安装excel:Option ExplicitDim excel, cpos, x, ySet excel = WScript.CreateObject("Excel.Application")cpos = excel.ExecuteExcel4Macro("CALL(""user32"",""GetMessagePos"",""J"")")x = CLng("&H" & Right(Hex(cpos), 4)) + 1y = CLng("&H" &

2021-01-15 14:01:22 39

原创 重新安装Windows应用商店

Win10重新安装Windows应用商店(Microsoft Store):打开开始菜单,输入Windows PowerShell,右键管理员身份打开。运行查询命令:Get-AppxPackage -allusers | Select Name,packagefullname |findstr Microsoft.WindowsStore输出:Microsoft.WindowsStore Microsoft.WindowsStore_12011.1001

2020-12-21 09:17:54 395

原创 Python:lambda,map、reduce、filter,..for..in..if

lambda关键字可以定义一个函数。以下3中写法效果相同:g = lambda x : x**2 + 2print(g(3)) # 11def f(x): return x**2 + 2print(f(3)) # 11print((lambda x : x**2 + 2)(3)) # 11再看3个例子,map、filter、reduce:li = [1, 2, 3, 4]m = map(lambda x: x**2, li)for i in m: prin

2020-09-07 17:57:40 67

原创 Python:使用ftplib模块访问ftp

代码:from ftplib import FTPftp = FTP()ftp.set_debuglevel(0)ftp.connect('10.10.11.22', '21')ftp.login('user', 'password')# 上传f1 = open('/path/file1', 'rb')ftp.storbinary('STOR ' + remote_file, f1, buf)f1.close()# 下载f2 = open('/path/file2', 'wb')

2020-09-07 15:58:34 75 1

原创 Python:安装Jupyter Notebook

本文参考了:How To Set Up Jupyter Notebook with Python 3 on Ubuntu 20.04 and Connect via SSH TunnelingIPython Notebook已经改名为Jupyter Notebook。安装pip3 install jupyter启动jupyter notebook启动后会打印日志,第一个启动的Notebook默认会使用8888端口。具体可以查看打印的日志,能够看到使用的端口和token:http://loc

2020-09-07 15:06:54 109

原创 Shell命令:任务控制命令fg、bg、ctrl+z、jobs

使用&符号后台执行命令:find / -name abcd &查询后台命令:jobs -l# 输出# [1]+ Running find / -name abcd &把后台命令调至前台执行:fg 1 # 因为find命令的任务标号为1把前台命令调至后台并暂停:按快捷键ctrl+z查看后台命令状态:jobs -l让后台命令由暂停状态转为执行:bg 1...

2020-09-04 17:24:16 91

原创 Python:使用subprocess模块执行shell命令

subprocess是python的内置模块,无需额外安装。import subprocessimport syscp = subprocess.run("ls -l", shell=True, capture_output=True, encoding='utf-8')print("returncode:\n" + str(cp.returncode))print("stdout:\n" + cp.stdout)print("stderr:\n" + cp.stderr)执行脚本:im

2020-09-04 16:20:02 291

原创 Python:虚拟环境virtualenv

不同的python项目会依赖不同的库,同一台服务器的不同项目依赖之间或许有冲突。这时可以用python的虚拟环境:每个虚拟环境都是独立的,不同虚拟环境下可以安装不同的库。这样让有依赖冲突的项目运行在不同的虚拟环境下,就可以互不影响。安装虚拟环境库:pip install virtualenv创建一个名称为venv1的虚拟环境:virtualenv venv1虚拟环境创建成功后,会在当前目录下生成一个venv1文件夹。激活虚拟环境:. venv1/bin/activate虚拟环境激活后

2020-09-04 10:47:01 66

原创 Python:使用paramiko模块(ssh执行远程命令,sftp传输文件)

安装模块pip3 install paramiko使用sftp传输文件:import paramikotrans = paramiko.Transport(('11.11.12.25', 22))trans.connect(username='abc', password='123abc')sftp = paramiko.SFTPClient.from_transport(trans)sftp.get(remotepath='/home/abc/t.txt',localpath='fil

2020-09-02 17:49:37 301

原创 Python:使用configparser模块读写ini配置文件

本文演示python使用configparser模块读取config.ini文件并写入config1.ini文件。安装模块:pip3 install configparserini文件是一个纯文本文件(utf-8编码),里面分为多个section,每个section下有多个配置项,每个配置项是一个键值对。config.ini文件内容:[book1]title = 'hello'note:world[book2]title=xiao mingnote : 22[book3]

2020-09-02 15:37:49 100

原创 常用数据库函数

mysql:substring_index[1,2, -1,-2]group_concat[distinct | order by]||nvl - ifnulllocatepositionhivecollect_listcollect_setcollect_wsconcat分析函数:row_number() over(partition by id order by op_time desc) as rn

2020-09-01 16:19:58 88

原创 hive中的动态分区和静态分区

对于向一张hive分区表写入数据,一般可以这样:insert into tb partition (par_col='par_value')select id, name from tb1;这样,数据都会被插入到tb表的par_value分区下。有时候我们会遇到这样的场景:tb1表下有个字段,比如month_id。我们想把tb1表数据插入tb表,并按照tb1表的month_id字段分区,这时候就要启动hive的动态分区功能:SET hive.exec.dynamic.partition = t

2020-09-01 13:55:08 65

原创 vim转换文件编码和换行格式,显示行号

vim查看打开文件的编码:set fileencoding用gbk打开文件:打开windows中以ANSI保存的文件vim file.txt -c "e ++enc=GB18030"设置打开文件的编码为utf-8:set fileencoding=utf-8查看打开文件的换号格式:set fileformat?设置打开文件的换号格式为 unix:set fileformat=unix...

2020-08-28 11:07:23 98

原创 Hive字段间进行模糊匹配

hive字段间可以进行模糊匹配,如下:select * from t;+------+------+| t.s | t.p |+------+------+| abc | a% || abc | bbc || abc | abc || abc | a__ || abc | a_ |+------+------+select * from t where s = p;+------+------+| t.s | t.p |+------+-----

2020-08-03 14:34:35 1056

原创 hive各种join关联表举例

select * from t1;+--------+----------+| t1.id | t1.name |+--------+----------+| 1 | a || 2 | b || 3 | c |+--------+----------+select * from t2;+-------+-------+| t2.i | t2.s |+-------+-------+| 0 | x

2020-08-03 11:25:13 56

原创 Here文档

here文档(Here document),又称作heredoc、hereis、here-字串或here-脚本,是一种在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)里定义一个字串的方法。它可以保存文字里面的换行或是缩排等空白字元。一些语言允许在字串里执行变量替换和命令替换。here文档最通用的语法是<<紧跟一个标识符,从下一行开始是想要引用的文字,然后再在单独的一行用相同的标识符关闭。在Unix

2020-07-16 17:03:56 59

原创 sftp命令

sftp是使用SFTP协议的命令行工具,可以进行加密文件传输。此命令的使用类似ftp命令,其功能也可以用lftp工具来实现。sftp -oPort=22 user@10.11.12.13:/root

2020-07-16 11:00:23 55

原创 lftp工具介绍

lftp是一个开源的客户端软件,可以支持多种协议的数据传输。官网 — http://lftp.yar.ru/手册 — http://lftp.yar.ru/lftp-man.html维基百科 — https://zh.wikipedia.org/wiki/Lftp默认配置情况下,lftp 使用ftp协议lftp 10.11.12.13# 相当于lftp ftp://10.11.12.13 # 推荐可以支持其他协议:lftp -u user,password sftp://10.11.

2020-07-16 10:10:05 80

原创 Python:使用pandas把excel内容写入数据库

省略安装相关依赖步骤:import numpy as npimport pandas as pdfrom sqlalchemy import create_enginefrom sqlalchemy.types import String, Integerimport osos.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'...

2020-01-15 16:36:58 1265

原创 从认知失调看加班文化

从认知失衡看加班文化本文概要:先解释了认知失衡这一心理现象的发现过程和实验过程。再从认知失衡这一心理现象出发,解释为何有人明明是加班的受害者却认同加班文化这一现象。1934年,印度尼泊尔一带发生了一场大地震(尼泊尔-比哈尔地震,死亡3万余人),震后,可怕的谣言传遍了整个印度。其内容是,在此次地震灾区以外的地区将会有范围更广、震级更大的地震发生。美国的心理学家利昂·费斯廷格(Leon Fe...

2019-12-26 16:07:28 134

原创 灵魂跟不上步伐

你不要跟着我我最近事情多今晚得加个班把对手都干翻哪天若不努力不是东哥好兄弟我奶奶八十八一年多没见过她过春节早回家“三十那天值班吧”“好呀好呀”,微笑呀年终评优有我吧“小王呀”,拍拍肩“目光一定放长远”“莫把金钱作目标”“自身成长最重要”我最近真很忙煮鸡汤补营养我奶奶八十八成长起来伺候她你不要跟着我我最近事情多是你呀,是你啊灵魂跟不上步伐你不要跟着我...

2019-12-24 15:13:16 90

原创 Oracle:正则替换函数REGEXP_REPLACE

先看个简单的例子:使用正则表达式,获取一列的最末数字字符:SELECT v, REGEXP_REPLACE(v, '.*(\d)[^0-9]*$' , '\1') last_n FROM ( SELECT 'abc123' v FROM dual UNION ALL SELECT '123abc' v FROM dual UNION ALL SELECT '1a2b3...

2019-11-24 15:35:06 441

原创 Oracle:多表关联更新字段(update)

Oracle可以用以下两种方式实现多表关联更新字段:update ( select t1.name name1, t2.name name2 from table1 t1 left join table2 t2 on t1.id = t2.id where t1.age > 20) tmpset tmp.name1 = tmp.name2;这样更新若报如下错误:...

2019-11-13 09:58:04 7981

原创 Shell:命令未完成换行

在shell命令中,如果一个命令未结束前需要换行,只需要对换行符进行转义操作,就能让shell解释器忽略转以后的换行符,进而把不同行视作一行。如:echo "abc"# 等效于echo \"abc"这里要注意,转义字符\后面必须紧跟换行符,而不能有其他任何字符。另外,有一些例外情况:若在某些明显存在未终止命令的情况下,将忽略换行符。也就是说这时候甚至可以不用对换行符进行转义。这...

2019-11-08 15:07:04 361

原创 Java:java.sql.Statement接口和其子接口

java.sql.Statement接口有两个子接口:CallableStatement和PreparedStatement。其中:StatementSQL语句只执行一次时推荐使用,执行静态的sql语句效率更高。PreparedStatement一次编译多次执行。若有带参数的语句要绑定不同参数多次执行,效率更高;执行动态参数的SQL语句,使用其setXxx方法能防止SQL注入,更加安...

2019-11-06 15:31:35 189

原创 Oracle:获取唯一主键

select sys_guid(), SUBSTR(sys_guid(), 1, 32), RAWTOHEX(sys_guid()) from dual;

2019-10-15 15:08:42 127

原创 Java:使用okhttp发送put请求,并推送json参数

使用okhttp发送put请求,并推送json参数。直接上代码:import java.util.concurrent.TimeUnit;import okhttp3.MediaType;import okhttp3.OkHttpClient;import okhttp3.Request;import okhttp3.RequestBody;import okhttp3.Respo...

2019-10-15 15:04:08 1334

原创 Oracle:列操作,增加索引、增加列、删除列和修改列

增加索引:CREATE INDEX "DBNAME"."TABLENAME_COLUMNNAME" ON "DBNAME"."TABLENAME" ("COLUMNNAME") TABLESPACE "TABLESPACENAME";增加、修改、删除列-- 增加列alter table table_name add column_name NVARCHAR2(16);-- 修改列a...

2019-10-15 14:45:26 1040

原创 Excel常用字符串函数

替换:=SUBSTITUTE("ababab","ab","-") # ---=SUBSTITUTE("bbb","b","-",2) # b-b重复:=REPT("ab", 4)# abababab数字转文字:=23&""# 23=TEXT(23, "000")# 023连接字符串=CONCATENATE("a",1,"b")# a1b="a"...

2019-10-11 11:17:13 1051

原创 Excel:countif统计函数的一个坑

countif函数的一个坑:如果用countif统计出现次数,若文本可以转为数字,且数字长度太长,会出现精度丢失从而统计出错,可以先把文本拼接为无法转为数字的文本再统计。注意:网上很多针对此问题的解决方案是查找条件使用通配符"*"或"?"拼接,若字符串不等长的时候也可能出现错误,如下所示。...

2019-10-11 11:15:43 406

原创 Python爬虫:Selenium获取iframe里面的内容

如下:driver.get(url)iframe = driver.find_elements_by_tag_name('iframe')[0]driver.switch_to.frame(iframe)soup = BeautifulSoup(driver.page_source, "lxml")# soup 就是iframe所嵌入页面的内容了...

2019-09-16 15:00:03 5290

原创 Python:python2和python3中的print分别做了什么

python2中,print是一条语句;python3中,print是一个函数。它们的作用都是打印字符。python2当要打印的数据是bytes类型(python2中的str就是bytes)时,会直接把字符序列传给打印终端。所以面对相同的str值,在编码不同的终端,print语句打印的出的内容可能不同。python3当要打印的数据是bytes类型时,为了在不同编码的终端上显示的统一性,只...

2019-09-14 16:03:30 267

原创 Python:python2和python3的str类型

注:以下如果不特定指python某个版本,就表示python2和python3通用的地方。python中通用的地方str类型都可以用引号包裹来定义。在同一个版本的python中,以下语句等效:s = 'ab's = "ab"s = '''ab'''s = """ab"""bytes类型都可以用引号包裹且前面加b来定义。在同一个版本的python中,以下语句等效:b = b'ab'...

2019-09-14 14:50:19 366

原创 编码:UTF-8编码、UTF-16编码规则

UTF是"Unicode/UCS Transformation Format"的首字母缩写,即把Unicode字符转换为某种格式之意。凡是以UTF开头的字符编码方案都是用来实现编码表示unicode字符串的。UTF-8和UTF-16都是可变长度的编码方式:UTF-8编码方案可能用1、2、3或4个字节表示一个unicode值。UTF-16编码方案可能用2或4个字节表示一个unicode值。...

2019-09-14 13:52:04 1076

原创 转义字符详解(java和python)

转义字符的含义就是用两个或多个字符来表示一个特殊字符,如用``Java语言有这些转义字符:Escape SequenceDescription\tInsert a tab in the text at this point.\bInsert a backspace in the text at this point.\nInsert a newline i...

2019-09-14 11:38:03 399

转载 Python:字符串和其二进制直接的互相转换

https://stackoverflow.com/a/7397689/6112110

2019-09-13 15:15:13 1139

转载 Python:使用str的format函数格式化字符串

https://www.runoob.com/python/att-string-format.html

2019-09-13 14:50:12 75

原创 Java:不可思议的java代码,让true等于false

public class FalseIsTrue { public static void main(String[] args) { if ( false == true ) { //these characters are magic: \u000a\u007d\u007b System.out.println("false is true!")...

2019-09-13 10:58:57 329

空空如也

为什么我发博文的代码块没有行号?

发表于 2018-12-24 最后回复 2018-12-25

能不能处理一下发博文限制

发表于 2018-12-05 最后回复 2018-12-05

CSDN博文待审核状态怎么去除

发表于 2018-05-24 最后回复 2018-05-24

一行代码,求解释

发表于 2011-01-27 最后回复 2018-05-24

关于如何深入学习C语言

发表于 2011-01-19 最后回复 2018-05-24

有关16进制编辑器使用的编辑控件窗口类疑问

发表于 2014-12-11 最后回复 2018-05-24

类文件和包文件运行时,查找classpath的方式相同吗?

发表于 2015-05-22 最后回复 2015-05-24

有关日志钩子的疑问

发表于 2014-11-25 最后回复 2014-12-01

关于子网起始地址、广播地址、网关、IP地址的疑问。

发表于 2014-09-13 最后回复 2014-11-19

如果你也喜欢用goto。。。。

发表于 2011-01-19 最后回复 2011-01-24

一个小程序的怪问题。

发表于 2011-01-20 最后回复 2011-01-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除