环境
镜像源
清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
豆瓣:http://pypi.douban.com/simple/
关于镜像源命令(conda)
-显示镜像源地址1
conda config --show channels
-添加镜像源地址(conda)
1 | conda config --remove channels url地址 |
-添加镜像源地址(pip)
升级 pip 到最新的版本 (>=10.0.0) 后进行配置:
1 | python -m pip install --upgrade pip |
如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:
1 | python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip |
-移除镜像源地址
1 | conda config --add channels |
-清除下载缓存(创建虚拟环境错误时使用)1
2conda clean -p
conda clean -a
虚拟环境命令
-查看当前存在哪些虚拟环境
1 | conda env list |
-查看安装了那些包1
conda list
-切换成32位虚拟环境1
set CONDA_FORCE_32BIT=1
-检查并更新conda1
conda update conda
-创建虚拟环境1
conda create -n your_env_name python=x.x
注:anaconda命令创建python版本为x.x,名字为your_env_name的虚拟环境。your_env_name文件可以在Anaconda安装目录envs文件下找到。
-命令行检查当前python版本1
2Linux: source activate your_env_nam
Windows: activate your_env_name
-虚拟环境中安装额外包1
conda install -n your_env_name [package]
-关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本)
windows:deactivate env_name
或者`activate root`切回root环境
Linux:source deactivate
-删除虚拟环境和环境下某个包1
2conda remove -n your_env_name --all`
conda remove --name $your_env_name $package_name
conda一键安装cuda和cudnn
1 | conda install cudatoolkit=11.3.1 cudnn=8.2.1 |
- CUDA 工具包 11.0 配合 cuDNN v8.0.2
- CUDA 工具包 11.1 配合 cuDNN v8.1.1
- 对不起,之前忘记最后一位了,最终把我自己坑惨了。。。
安装位置在library\lib
安装torch
GPU版本:1
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
CPU版本1
conda install pytorch torchvision torchaudio cpuonly -c pytorch
其它(某些易混淆概念)
Pycahrm是一个python包管理工具,可以自由切换python版本,spyder是自带用于科学数据分析的工具,默认为base,需要进anaconda navigator内安装相应环境的spyder。
Python内容(不是教程!)
检查是否存在全局变量
1 | if "var_name" in globals(): |
可以分别利用 globals()和 locals()在全局和本地范围内检查变量。
globals和locals这两个作用域函数都会返回字典——因此也执行上述的字典合并语法{x, y}。代码在合并范围后的字典中同时检查了test1和test2。
Opencv
裁剪图片
1 | resized1[y1:y2, x1:x2]=resized0 |
resized0是小图
resized1是大图,参数是左上点和右下点
在图片(或视频)中添加文字
示例:1
cv2.putText(img, str(i), (123,456)), font, 2, (0,255,0), 3)
各参数依次是:图片,添加的文字,左上角坐标,字体,字体大小,颜色,字体粗细
其中字体可以选择
FONT_HERSHEY_SIMPLEX
Python: cv.FONT_HERSHEY_SIMPLEX
FONT_HERSHEY_PLAIN
Python: cv.FONT_HERSHEY_PLAIN
FONT_HERSHEY_DUPLEX
Python: cv.FONT_HERSHEY_DUPLEX
FONT_HERSHEY_COMPLEX
Python: cv.FONT_HERSHEY_COMPLEX
图片储存为numpy
示例:1
2
3
4
5
6
7
8
9import cv2
import numpy as np
#使用numpy创建二维数组
img=np.ones((200,200))
#转化类型
img=np.int8(img)
#转化成灰度图片
img=cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
cv2.imwrite("demo.jpg",img)
Win32api
1 | # 获取鼠标当前位置的坐标 |
一点好玩的东西
python可以通过反射调用C# dll库,首先在vs 2022内建一个C#类库,编译后在bin内寻找相应dll文件,复制到pycahrm项目内,导入pythonnet库,ide标红不要怕,跑就完事了,能通。
随后因为某些原因,又尝试调用c dll,照例打开vs2022,建立一个c++ dll文件,按惯例改文件名成c的后缀,网上教程很多,照着弄完事,技术很成熟。
于是乎,一个同时使用c、c#和python的乱炖项目诞生了……
——————忽然——————我发现如果使用mmap进行视频的共享,会因为不同程序的时钟问题卡住,一番尝试后还是改成python,事实证明python效率比c#差了一截,获取同样窗口截图占用更高——————