鼠标左键右键滚轮,ctrl键出现乱码,[?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[

## 问题描述

鼠标操作:点击、滚轮都会出现乱码,类似下面的:

“` #OK!OK#OK OK#OK ZE#ZE m>#m>”l>#l> [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? [?#[? YL#YL S?#S?”R3#R3″N;#N;”N;#N;”N; SA#SA RA#RA RA#RA RA#RA A1#A1 A1#A1 A1#A1 A1#A1 A1#A1 A1#A1 p?#p? ?##?$ E-#E- E-#E- E-#E- E-“E-#E- E-#E- E-#E-#E-“F4#F4″K6#K6″K6″K6#K6″K6″X;#X;”X;#X; P/#P/ P/#P/ P/#P/ P/#P/ P/#P/ Y6#Y6aiGaiGaiGaiGaiGaiGaiGaiGaiG`iF`iF`iF`i

“`

## 方法

输入reset即可,

> reset

## 原因分析

用很多关键字搜了很久,没找到。一直用关闭解决。后来看到

这篇文章

才反应过来,每次出现这个问题都是在使用ssh,是这个终端ssh登录机器后用htop在看进程但是机器挂了,而htop会接收鼠标操作,可能终端并未因此停止接收。于是就出现了上述问题。

工作踩坑(10.13日)

对python多线程进行debug调试,调试的线程print特别多东西的时候,多线程另一边会等待
但是当正常运行,由于输出延时,会导致另一边同时执行另一段代码,这边还没跑出结果,另一边拿不到资源,导致报错,注意不要输出太多debug信息,否则正常运行多线程互相拿数据的时候会有gap

python的字典不能用单引号”去当key,会报错(好低级草)

关于django+vue工程部署到服务器上遇到的问题

一、前台有错误,前台请求后台接收不到

由于之前一直是在本地运行调试网站,前台请求后台都是http://localhost:8000/api/这样类似的,也一直没有问题,等到部署到服务器上时就卡主了,后来发现得把localhost换成当前ip,貌似可以用window.location.host来获取主机ip

二、前台正确的情况下,网站后台接收不到请求

一般是服务器没运行起来,但我可能比较特别,我一直使用python3 manage.py runserver 127.0.0.1:8000 在服务器上启动后台,然后根本接收不到请求,百度了半天,一个个解决方案去试,后来发现应该用python3 manage.py runserver 0.0.0.0:8000,这个127.0.0.1,和0.0.0.0广播地址有点搞不明白为什么,之后有时间再来百度理解一下,为什么

三、前台axios请求等待返回值后再执行

前面加个await就可以了,这次找bug感觉对前后台请求更为了解了,下次碰到前台发请求后台无响应net refused这种,在服务器上估计就是地址错了,或者服务器没有运行对地址,django如果接受到了get和post请求一定会显示在控制台上,但是如果换成java,下次查查有没有日志显示get和post请求历史日志

python相对路径

f=open(‘test.txt’),明明test.txt就在代码文件旁边,还是说no such file ,发现是默认在上层,也就是要改成./taple_label/label/test.txt,django框架的坑?还是python的坑呢,之后回头再看看吧

Navicat Premium 15 用注册机注册的时候 报错 rsa public key not find

文件下载链接

链接:https://pan.baidu.com/s/1tshmdC5N7FcdDEsVwVRL5g
提取码:2333

安装文件和注册机准备好后,全程断开网络,如果失败了就卸载重装再来一次,基本上能百分百成功

第一步先不要打开 Navicat ,先打开注册机

第二步:点击path 找到你的Navicat启动的exe,安装路径的exe,选中Navicat.exe,点击打开。

第三步:稍等打开后,手动打开 Navicat 软件,进入激活界面后,点击注册机的Generate

第四步: 点击手动注册,然后先点击Copy 再点击 paste ,将那一串代码,输入到 DeFconX 下

第五步点击最后一个按钮,将生成的代码拷贝,输入Navicat 的注册框

正则表达式的学习

最近写了一个匹配以什么什么开头,以什么什么结尾的,且字符串长度不超过多少的正则

pattern = re.compile(r’肌酐[\w|:|/|↑|.| |(|)|:|\u4e00-\u9fa5]{,20}L’) #/&;/g [\u4e00-\u9fa5]

(此处为以肌酐开头,以L结尾的匹配)

p.append(pattern)

在学习时,注意到了/g这个用法,能让match函数返回多个值,然后是\.来匹配点

还有没有非某个范围的说法,比如企图用/|\u4e00-\u9fa5]来匹配不是中文的一切东西是不行的

然后是group的用法,这就是个分组

如果正则里面有小括号部分,括起来的就是分组,第一个是分组1,第二个是分组2

例子

import re
pattern = re.compile(‘(\d+).(\d)?’)
s=’肌酐(Cr): 456,187.0μmol/L546.555′
searchObj = re.search(pattern, s, flags=0)
print(searchObj.group(1))

只能匹配某个范围,没有非

了解到 ?* 和 {,20} 从某种程度来说,很像,?*只是一个没有确定值的范围,尽可能少

了解到断言?:

首先,正则表达式的”非”,代表不想匹配某个字符。

比如字符串 helloword123,/[^0-9]+/g 可以匹配非数字,即匹配结果为 helloword;

同样的,/[^he]+/g 可以匹配非h非e的字符,匹配结果为lloword123;

那么 /[^hello]/g 呢?乍一看可能会以为能匹配word123,其实不然,[^] 内的多个字符是”或”的关系存在的,即它们并不是一个整体,/[^hello]/g 表示 非h非e非l非o,并不能理解为 非(hello),所以匹配结果是 w 和 rd123。

道理我们都懂,可我们就是想匹配非某个字符串呢?比如某一字符串若是含有hello则无匹配,若是不含hello则匹配,写成[^hello]是显然不行的,[^(hello)] 呢?其实不起作用。

这时我们需要用到正则表达式的断言——(?!pattern) 零宽负向先行断言 或者 (?<!pattern) 零宽负向后行断言 均可。

这里只介绍一种写法,大家可以都去尝试一下。

/^((?!hello).)+$/

由于断言 (?!hello)是不占位的,后跟的 . 在原位置匹配任意字符,再用括号将其括起来,用+重复一次或多次,前后加上^和$,若是字符串中存在hello,则匹配到h字符之前的时候,断言(?!hello)匹配失败,正则匹配结果为false, 若是字符串中不存在hello,则匹配结果是整个字符串。

用法实战

  1. 匹配&和;之间不含有test的字符

str = “hello&nbsp; &test1;test&qout;”;

正则表达式:/&((?!test).)+;/g

匹配结果:&nbsp;和 &qout;

2.匹配不含有标签的标签

str = “<div id=’1′><img class=’xx’></div><div id=’1′><input type=”text”></div>“;

正则表达式: /<div[^>]*>((?!<img[^>]*>).)+</div>/g

匹配结果:<div id=’1′><input type=”text”></div>