python常用函数详解

1、tf.cast( ) 或者K.cast( ) 是执行 tensorflow 中的张量数据类型转换,比如读入的图片是int8类型的,一定要在训练的时候把图片的数据格式转换为float32.
cast(x, dtype, name=None)
第一个参数 x: 待转换的数据(张量)
第二个参数 dtype: 目标数据类型
第三个参数 name: 可选参数,定义操作的名称

2、np.arange() 函数返回一个有终点和起点的固定步长的排列
a = np.arange(0, 3, 0.1) 三个参数 起点为0,终点为3,步长为0.1
输出[ 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1. 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2. 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9]

3、python 中的[:-1]和[::-1]有什么区别
a=‘python’
b=a[::-1]
print(b) #nohtyp

c=a[::-2]
print(c) #nhy
#从后往前数的话,最后一个位置为-1

d=a[:-1]  #从位置0到位置-1之前的数
print(d)  #pytho
e=a[:-2]  #从位置0到位置-2之前的数
print(e)  #pyth

4、transpose进行的操作其实是将各个维度重置,
原来(2,3,4)对应的是(0,1,2)。使用transpose(1,0,2)后,各个维度大小变为(3,2,4),其实就是将第一维和第二维互换。

5、expand_dims来将维度加1
# ‘t2’ is a tensor of shape [2, 3, 5]
shape(expand_dims(t2, 0)) ==> [1, 2, 3, 5]
shape(expand_dims(t2, 2)) ==> [2, 3, 1, 5]
shape(expand_dims(t2, 3)) ==> [2, 3, 5, 1]

6、flatten()把多维数组变成一维数组

>>> a=array([[1,2],[3,4],[5,6]])
>>> a
array([[1, 2],
    [3, 4],
    [5, 6]])
>>> a.flatten() #默认按行的方向降维
array([1, 2, 3, 4, 5, 6])
>>> a.flatten('F') #按列降维
array([1, 3, 5, 2, 4, 6]) 
>>> a.flatten('A') #按行降维
array([1, 2, 3, 4, 5, 6])

7、广播(broadcasting)是指不同形状的数组之间执行算术运算的方式。需要遵循4个原则。
1:让所有输入数组都向其中shape最长的数组看齐,shape中不足的部分都通过在前面加1补齐。
2:输出数组的shape是输入数组shape的各个轴上的最大值。
3:如果各个输入数组的对应轴的长度相同或者其长度为1时,这样的数组之间能够用来计算,否则 出错。
4:当输入数组的某个轴的长度为1时,沿着此轴运算时都用此轴上的第一组值。

8、python os.path模块
os.path.abspath(path) #返回绝对路径
os.path.basename(path) #返回文件名
os.path.commonprefix(list) #返回list(多个路径)中,所有path共有的最长的路径。
os.path.dirname(path) #返回文件路径
os.path.exists(path) #路径存在则返回True,路径损坏返回False
os.path.lexists #路径存在则返回True,路径损坏也返回True
os.path.expanduser(path) #把path中包含的""和"user"转换成用户目录
os.path.expandvars(path) #根据环境变量的值替换path中包含的”name”和”{name}”
os.path.getatime(path) #返回最后一次进入此path的时间。
os.path.getmtime(path) #返回在此path下最后一次修改的时间。
os.path.getctime(path) #返回path的大小
os.path.getsize(path) #返回文件大小,如果文件不存在就返回错误
os.path.isabs(path) #判断是否为绝对路径
os.path.isfile(path) #判断路径是否为文件
os.path.isdir(path) #判断路径是否为目录
os.path.islink(path) #判断路径是否为链接
os.path.ismount(path) #判断路径是否为挂载点()
os.path.join(path1[, path2[, …]]) #把目录和文件名合成一个路径
os.path.normcase(path) #转换path的大小写和斜杠
os.path.normpath(path) #规范path字符串形式
os.path.realpath(path) #返回path的真实路径
os.path.relpath(path[, start]) #从start开始计算相对路径
os.path.samefile(path1, path2) #判断目录或文件是否相同
os.path.sameopenfile(fp1, fp2) #判断fp1和fp2是否指向同一文件
os.path.samestat(stat1, stat2) #判断stat tuple stat1和stat2是否指向同一个文件
os.path.split(path) #把路径分割成dirname和basename,返回一个元组
os.path.splitdrive(path) #一般用在windows下,返回驱动器名和路径组成的元组
os.path.splitext(path) #分割路径,返回路径名和文件扩展名的元组
os.path.splitunc(path) #把路径分割为加载点与文件
os.path.walk(path, visit, arg) #遍历path,进入每个目录都调用visit函数,visit函数必须有
#3个参数(arg, dirname, names),dirname表示当前目录的目录名,names代表当前目录下的所有文件名,args则为walk的第三个参数
os.path.supports_unicode_filenames #设置是否支持unicode路径名

    ################################################################################################
    '''
    os.path模块主要用于文件的属性获取,在编程中经常用到,以下是该模块的几种常用方法。更多的方法可以去查看官方文档:http://docs.python.org/library/os.path.html
    '''
    1).os.path.abspath(path)    #返回path规范化的绝对路径。 

    >>> os.path.abspath('test.csv') 
    'C:\\Python25\\test.csv' 
    >>> os.path.abspath('c:\\test.csv') 
    'c:\\test.csv' 
    >>> os.path.abspath('../csv\\test.csv') 
    'C:\\csv\\test.csv' 
    
    2).os.path.split(path)  #将path分割成目录和文件名二元组返回。 
    
    >>> os.path.split('c:\\csv\\test.csv') 
    ('c:\\csv', 'test.csv') 
    >>> os.path.split('c:\\csv\\') 
    ('c:\\csv', '') 
    
    3).os.path.dirname(path)   #返回path的目录。其实就是os.path.split(path)的第一个元素。 
    
    >>> os.path.dirname('c:\\csv\test.csv') 
    'c:\\' 
    >>> os.path.dirname('c:\\csv') 
    'c:\\' 
    
    4).os.path.basename(path)   #返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素。 
    
    >>> os.path.basename('c:\\test.csv') 
    'test.csv' 
    >>> os.path.basename('c:\\csv') 
    'csv' (这里csv被当作文件名处理了) 
    >>> os.path.basename('c:\\csv\\') 
    '' "
    
    5).os.path.commonprefix(list)  #返回list中,所有path共有的最长的路径。 
    
    如: 
    >>> os.path.commonprefix(['/home/td','/home/td/ff','/home/td/fff']) 
    '/home/td' 
    
    6).os.path.exists(path)   #如果path存在,返回True;如果path不存在,返回False。 
    
    >>> os.path.exists('c:\\') 
    True 
    >>> os.path.exists('c:\\csv\\test.csv') 
    False 
    
    7).os.path.isabs(path)   #如果path是绝对路径,返回True。 
    
    8).os.path.isfile(path)  #如果path是一个存在的文件,返回True。否则返回False。 
    
    >>> os.path.isfile('c:\\boot.ini') 
    True 
    >>> os.path.isfile('c:\\csv\\test.csv') 
    False 
    >>> os.path.isfile('c:\\csv\\') 
    False 
    
    9).os.path.isdir(path)   #如果path是一个存在的目录,则返回True。否则返回False。 
    
    >>> os.path.isdir('c:\\') 
    True 
    >>> os.path.isdir('c:\\csv\\') 
    False 
    >>> os.path.isdir('c:\\windows\\test.csv') 
    False 
    
    10).os.path.join(path1[, path2[, ...]])   #将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。 
    
    >>> os.path.join('c:\\', 'csv', 'test.csv') 
    'c:\\csv\\test.csv' 
    >>> os.path.join('windows\temp', 'c:\\', 'csv', 'test.csv') 
    'c:\\csv\\test.csv' 
    >>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c') 
    '/home/aa/bb/c' 
    
    11).os.path.normcase(path)   #在Linux和Mac平台上,该函数会原样返回path,在windows平台上会将路径中所有字符转换为小写,并将所有斜杠转换为饭斜杠。 
    
    >>> os.path.normcase('c:/windows\\system32\\') 
    'c:\\windows\\system32\\' 
    
    12).os.path.normpath(path)     #规范化路径。 
    
    >>> os.path.normpath('c://windows\\System32\\../Temp/') 
    'c:\\windows\\Temp' 
    
    12).os.path.splitdrive(path)   #返回(drivername,fpath)元组 
    
    >>> os.path.splitdrive('c:\\windows') 
    ('c:', '\\windows') 
    
    13).os.path.splitext(path)    #分离文件名与扩展名;默认返回(fname,fextension)元组,可做分片操作 
    
    >>> os.path.splitext('c:\\csv\\test.csv') 
    ('c:\\csv\\test', '.csv') 
    
    14).os.path.getsize(path)     #返回path的文件的大小(字节)。 
    
    >>> os.path.getsize('c:\\boot.ini') 
    299L 
    
    15).os.path.getatime(path)    #返回path所指向的文件或者目录的最后存取时间。 
    
    16).os.path.getmtime(path)    #返回path所指向的文件或者目录的最后修改时间

你可能感兴趣的:(python,numpy,深度学习)