导语

这是一篇用于记录不常用编程代码的文章,主要服务于博主,便于日后快速查询使用。

正文

一、Python

1.互联网IP地址匹配

单个搜索(re.search):
pattern = r'(((25[0-5])|(2[0-4]d)|(1d{2})|(d{1,2})).){3}(((25[0-5])|(2[0-4]d)|(1d{2})|(d{1,2})))'
多个搜索(re.findall 非捕获组):
pattern = r'(?:(?:(?:25[0-5])|(?:2[0-4]d)|(?:1d{2})|(?:d{1,2})).){3}(?:(?:(?:25[0-5])|(?:2[0-4]d)|(?:1d{2})|(?:d{1,2})))'

2.Pip升级指令

python -m pip install --upgrade pip

3.Python英文大小写转换

str = "AbCd-eFg"
str.upper()  # ABCD-EFG
str.lower()  # abcd-efg
str.title()  # Abcd-Efg
str.capitalize() # Abcd-efg

4.Python 第三方库升级

pip install --upgrade requests

5.re的DOTALL模式

由于记忆不清,基础不牢固,之前在学习的时候,模模糊糊的记得通配符 . 啥都可以匹配,但是在一次项目中,看着代码明明没有错,re代码部分却屡屡报错。通过网上查阅才知道,在re的普通模式中, 通配符 . 是不能匹配换行符\n的,此时只需要将re模式改为DOTALL即可。

text = '<span class="colorHui">\n<a href="www.baidu.com" target="_blank" title="测试">测试</a>\n</span>'
result = re.search(r'<span.+?title=".+?">(.+?)</a>', text, flags=re.DOTALL).group(1)

6.matlotlib保存空白问题

这是一个很简单的问题, 必须先调用savefig()函数之后才能调用show()函数

import matplotlib.pyplot as plt
plt.savefig("test.png")
plt.show()

二、MySQL

1.修改表格字段

-- 语法: ALTER TABLE 表名 CHANGE 旧字段名 新字段名 字段类型 约束条件
ALTER TABLE tabla_name CHANGE column_name new_column_name VARCHAR(20) NOT NULL DEFAULT "123456";

2.初始化/更改用户密码

SET PASSWORD = Password("your password");
-- 或者
SET password FOR 'username'@'host' = Password('新密码');

3.新建用户

USE mysql;
CREATE USER "username"@"localhost" identified by "login_password";
-- 授权远程登录
CREATE USER "username"@"%" identified by "login_password";

4.修改表格字段类型

ALTER TABLE table_name MODIFY COLUMN column_name column_type;
-- 例如将test表格中的test字段的字段类型修改为时间datetine
ALTER TABLE test MODIFY COLUMN test datetime;

5.修改表格字段编码

USE DATABASE;
ALTER TABLE tablename CONVERT TO CHARSET utf8;

6.修改数据库编码

ALTER DATABASE databasename CHARACTER SET utf8;

7.查看数据库编码等信息

\s

8.查看表格字段信息

SHOW CREATE TABLE tablename;

四、Git

1.Ubuntu环境下,记住密码

添加如下代码

vim ~/.gitconfig
## 添加如下代码
[credential]
    helper = store

五、Ubuntu

1.mysql初始安装时无法远程连接

方案: 修改bind-address = 127.0.0.1 为 bind_address = 0.0.0.0

vim /etc/mysql/mysql.conf.d/mysqld.cnf
/etc/init.d/mysql restart

2.用户组的相关操作

# 创建组
sudo groupadd groupname
# 将用户添加到组中
sudo usermod -G groupname username
# 更改文件所在用户组
sudo chgrp groupname file_path
# 更改文件夹所在用户组
sudo chgrp -R groupname path

3.Ubuntu后台运行代码

防止shell关闭后,代码随之停止运行
以运行flask服务为例,

nohup flask run > flask.log

4.小技巧

// 使用管道搜索含有指定关键字的进程
ps -ef | grep pattern

// 使用输出重定向将内容输出到文件
sudo apt lsit > packages.list

// 在某个长文件中搜索内容, pattern可为正则表达式
grep pattern [file_path]

// 分页输出长内容
more file_path

// 分页输出长内容
less file_path

六、其他

pass

Last modification:March 3, 2022
如果觉得我的文章对你有用,请随意赞赏