编程python
1.包的安装
pip install package #这里package即为第三方包的名称,如tensorflow,使用这种安装方式会安装最新版本的包
pip uninstall package #卸载包
pip show package #显示所安装包的信息
pip install package==version #package:包名;version:版本号。如pip install tensorflow-gpu==1.4.0即是安装1.4.0版本的gpu版本的tensorflow
2.conda环境
conda create -n 环境名 python=版本号
conda remove -n 环境名 --all
conda create -n tf --clone rcnn #clone一份和rcnn一样的tf
conda info -e #查看全部环境
3.os模块
os.path.jion(path1,path2)
把目录名和文件名合在一起
os.path.exits(path)
路径存在返回true
os.path.dirname(path)
返回文件路径
os.makedirs(path)
创建文件夹
os.listdir(path)
返回path指定的文件夹包含的文件或文件夹的名字列表
4.列表
list.sort()
对列表进行排序
list.append()
在列表末尾添加新的对象
矩阵.tolist()
可以把矩阵转变成列表
5.读取图片
matplot.image.imread(img_path)
有matlab风格的,直接返回numpy.ndarray格式通道顺序是RGB,通道值默认范围0-255。
cv2.imread(img_path)
使用opencv读取图像,直接返回numpy.ndarray 对象,通道顺序为BGR ,注意是BGR,通道值默认范围0-255。
skimage.io.imread(img_path)
直接返回numpy.ndarray 对象,通道顺序为RGB,通道值默认范围0-255。
caffe.io.load_image
没有调用默认的skimage.io.imread,返回值为0-1的float型数据,通道顺序为RGB
6.numpy
np.shape(整数/矩阵)
读取矩阵的维度,如果是一个整数,输出0,输出(a,b) a,b分别是行数,列数。列表是个n行1列的矩阵。
(1)数组改变维度
数组.reshape(a,b,c)
不改变原来的数组,有返回值。
数组.resize(a,b,c)
改变数组维度,无返回值
数组.shape=(a,b,c)
改变数组维度,shape是属性,其他是函数
(2)数组变一维,不改变数组本身,但是都有返回值
ravel、flatt函数都返回一维数组的一个视图(View)
但是flatten函数还会请求分配内存来保存结果
(3)数组转置
transpose函数与T 属性功能一致:不改变原数组,有转置后的返回值,且一维数组返回值为它本身。
当维度大于等于三维时,transpose函数可以交换维度顺序,当transpose()参数为空时,默认参数是维度序号的倒序排列,以三维为例 transpose() 等价于 transpose(2,1,0) 即深度变为行,行变为深度
本来应该是0,1,2的,通过变换三个数的位置来维度交换。
(4)reshape & np.squeeze 去除值为1的维度轴
np.squeeze(数组,axis=none)
axis指定删除的维度,第几维,axis为空,删除所有单维度。不改变数组,有返回值
(5)建一个全0矩阵
import numpy.matlib
b=np.matlib.zeros((2,2))
(6)矩阵降维
a=np.array([[[1,1,1],[2,2,2]],[[3,3,3],[4,4,4]]])
c=a[:,:,0]
c=[[1,2],[3,4]]
(7)reshape和np.newaxis增加值为1的维度
a.reshape((1,)+a.shape+(1,))
a[np.newaxis,...,np.newaxis]
把shape从(2,2)变成(1,2,2,1)
7.列表与元组
列表转换成元组
tuple=tuple(list)
元组转换成列表
list=list(tuple)
元组变数组
arr=np.array(tuple)
8.linux三板砖
基础命令:
(1)cd 路径
cd 路径 切换到指定路径
cd logs 切换到logs路径下
cd /切换到根目录
cd ../ 切换到上一层路径
(2)ls命令
ls /现实根目录下的所有文件和文件夹
ls -l /data 显示/data路径下所有文件和文件夹的详细信息
ls -l 显示当前路径下的所有文件和文件夹的详细信息
ls *l wc显示当前目录下面的文件数量
(3)cat命令(concatenate)
读取文件内容与拼接文件
cat /sys/devices/online 读取/sys/devices/路径下online文件内容
cat test.txt读取当前路径下test.txt内容
(4)rm命令
-r表示删除目录,用于删除文件或文件夹,-f表示强制删除,不需要确认
rm- rf path 删除path
rm test.txt删除test.txt
(5)mkdir命令
mkdir /data/path 在/data路径下创建path文件
mkdir -p a/b/c参数-p用于创建多级文件
(6)cp命令 (复制文件或文件夹)
cp 文件 目标文件
cp /data/logs /data/local/temp/logs 复制/data路径下的logs到/data/local/temp路径下
cp -r 文件夹 目标文件夹
(7)kill命令(结束当前进程)
ps au查看进程,找到PID码,通过kill PID结束进程
(8)
pwd查看当前路径
tar可以压缩文件(不了解)
upzip解压文件
unrar e file.rar 解压rar
unzip file.zip 解压zip

浙公网安备 33010602011771号