python运算符


/
表示浮点数除法, 结果中保留小数点
num = 5
num /= 2
print(num)  # 输出 2.5
1
2
3
//
表示整数除法,返回不大于结果的一个最大的整数.
num = 5
num //= 2
print(num)  # 输出 2
1
2
3
%
取余数
num = 5
num %= 2
print(num)  # 输出 1
1
2
3
参考: https://blog.csdn.net/data8866/article/details/62884210/
补充
而在C/C++中,"/ " 算术运算符的计算结果通常是根据参与运算的两边的数据决定的, 比如:
任意一边是浮点数, 结果就是浮点数
两边都是整型, 结果就是整型
```<!--autointro-->

机器学习中如何保存已经训练好的模型

机器学习中如何保存已经训练好的模型

当我们训练好一个model后,下次如果还想用这个model,我们就需要把这个model保存下来,下次直接导入就好了,不然每次都跑一遍。
sklearn官网提供了两种保存model的方法:

1.使用python自带的pickle

from sklearn.ensemble import RandomForestClassifier
from sklearn import datasets
import pickle
#方法一:python自带的pickle
(X,y) = datasets.load_iris(return_X_y=True)
rfc = RandomForestClassifier(n_estimators=100,max_depth=100)
rfc.fit(X,y)
print(rfc.predict(X[0:1,:]))
#save model
f = open('saved_model/rfc.pickle','wb')
pickle.dump(rfc,f)
f.close()
#load model
f = open('saved_model/rfc.pickle','rb')
rfc1 = pickle.load(f)
f.close()
print(rfc1.predict(X[0:1,:]))

2.使用sklearn中的模块joblib

使用joblib模块更加的简单了,核心代码就两行


from sklearn.ensemble import RandomForestClassifier
from sklearn import datasets
from sklearn.externals import joblib
#方法二:使用sklearn中的模块joblib
(X,y) = datasets.load_iris(return_X_y=True)
rfc = RandomForestClassifier(n_estimators=100,max_depth=100)
rfc.fit(X,y)
print(rfc.predict(X[0:1,:]))
#save model
joblib.dump(rfc, 'saved_model/rfc.pkl')
#load model
rfc2 = joblib.load('saved_model/rfc.pkl')
print(rfc2.predict(X[0:1,:]))
```<!--autointro-->

安装youtube-dl并下载YouTube视频


C:\Users\JOSE>pip install youtube-dl
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting youtube-dl
Downloading https://pypi.tuna.tsinghua.edu.cn/packages/40/93/65c208f51895f74bbfea1423974c54fff1d1c4e9a97ebee1011b021554b8/youtube_dl-2021.12.17-py2.py3-none-any.whl (1.9 MB)
---------------------------------------- 1.9/1.9 MB 3.0 MB/s eta 0:00:00
Installing collected packages: youtube-dl
Successfully installed youtube-dl-2021.12.17
WARNING: There was an error checking the latest version of pip.
C:\Users\JOSE<!--autointro-->

安装paddlepadlle

conda create -n PaddleEnv
conda activate PaddleEnv
conda install pip
python -m pip install paddlepaddle==2.4.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install --upgrade paddlenlp

安装cpu版本的paddlepaddle报gpu相关错误

ValueError: The device should not be 'gpu', since PaddlePaddle is not compiled with CUDA


上面的修改不起作用,把默认配置中设备改成cpu就行了

安装flask-admin出错解决

今天安装flask-admin总出错
指定源好了

pip install flask-admin -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com

公司电脑pip配置文件位置(可以搜索到)
C:\Users\weiyo\AppData\Roaming\pip

flask快速入门

flask快速入门

Flask是一种轻量级的Python Web框架,可以快速搭建Web应用程序。下面是一个Flask的快速入门指南:

  1. 安装Flask

可以使用pip命令安装Flask:pip install flask

  1. 创建一个Flask应用

创建一个名为app.py的文件,并在文件中导入Flask类:

python

from flask import Flask
app = Flask(__name__)

__name__参数表示当前模块的名称,用于初始化Flask应用程序实例。

  1. 创建一个路由

在Flask中,路由用于将URL映射到相应的处理程序函数。可以使用@app.route装饰器创建路由:

python

@app.route('/')
def index():
return 'Hello, World!'

这个路由将根URL(/)映射到名为index()的函数,该函数返回一个简单的“Hello, World!”消息。

  1. 运行应用程序

在Flask应用程序中,可以使用app.run()方法来运行应用程序:

markdown

if __name__ == '__main__':
app.run()

这个条件判断语句是为了确保只有在直接运行应用程序时才运行服务器。在终端中运行python app.py命令启动应用程序。

完整的示例代码:

python

from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'Hello, World!'
if __name__ == '__main__':
app.run()

访问http://localhost:5000/即可看到“Hello, World!”消息。这就是一个简单的Flask应用程序的快速入门示例。

安装使用pipenv

安装pipenv

pip install pipenv -i https://pypi.tuna.tsinghua.edu.cn/simple

提示

Defaulting to user installation because normal site-packages is not writeable
WARNING: The script virtualenv.exe is installed in 'C:\Users\weiyo\AppData\Roaming\Python\Python39\Scripts' which is not on PATH.

把提示加入系统环境变量才可以正常使用pipenv

“`shell
(base) PS C:\Users\weiyo<!–autointro–>

如何将docker镜像将自定义的应用日志输出到控制台

如何将docker镜像的日志输出到标准输出/错误输出?(将自定义的应用日志输出到控制台)

对于一个nginx容器,如果要通过docker logs命令,直接查看容器的日志,该如何来操作?

非常的简单,就是将应用(nginx)生成的日志输出到标准输出或者错误输出。

那么,具体的实现是什么呢?

就是在制作镜像的时候,将应用日志与标准输出/错误输出设备进行关联,比如下面的nginx dockerfile中的命令:

forward request and error logs to docker log collector

RUN ln -sf /dev/stdout /var/log/nginx/access.log \
&& ln -sf /dev/stderr /var/log/nginx/error.log

这样,就在制作镜像的时候,建立了软链接。

容器运行时,产生的日志,就会通过docker logs命令查看到了。

更重要的是,通过这种方法,任何的自定义的应用的日志,都可以链接到标准输出和标准错误输出。轻松的通过docker logs命令查看日志。

开源cms推荐

postlight/awesome-cms

2021年流行的11种WordPress替代品

A collection of open and closed source Content Management Systems (CMS) for your perusal.

siteserver/cms

https://github.com/siteserver/cms
基于.net core.
几乎支持各类系统及安装方法,非常丰富的权限管理方式。

drupal/drupal

wodby/docker4drupal

keystonejs/keystone

https://github.com/keystonejs/keystone

joomla/joomla-cms

https://github.com/joomla/joomla-cms

django-cms/django-cms

https://github.com/django-cms/django-cms

WordPress/WordPress

nezhar/wordpress-docker-compose

docker-library/wordpress

octobercms/october

Self-hosted CMS platform based on the Laravel PHP Framework.

sanluan/PublicCMS

包含企业付费版,界面不错,基于Java

SpinaCMS/Spina

LavaLite/cms

基于Laravel framework,界面看起来不错,好像不支持docker部署。

craftcms/cms

https://github.com/craftcms/cms

decaporg/decap-cms

https://github.com/decaporg/decap-cms
静态文章生成器

stephenmcd/mezzanine

https://github.com/stephenmcd/mezzanine
基于django cms

pagekit/pagekit

umbraco/Umbraco-CMS

The simple, flexible and friendly ASP.NET CMS used by more than 730.000 websites

TypiCMS/Base

lektor/lektor