1、inspect.getfile(文件名)文件名一般与类名相同,返回文件目录包含文件名

import inspect
class os测试:
def __init__(self):
path = inspect.getfile(os测试)
     print(path) 结果:
G:/Android/tensorflow-vgg-master/os测试.py

2、os.pardir  返回当前目录上一级

import inspect
import os class os测试:
def __init__(self):
path = inspect.getfile(os测试)
print(path)
path = os.path.abspath(os.path.join(path,os.pardir))
print(path) vgg = os测试() 结果:
G:/Android/tensorflow-vgg-master/os测试.py
G:\Android\tensorflow-vgg-master

3、os.path.abspath() 返回绝对路径

os.path.abspath('test.csv')
'C:\\Python25\\test.csv'

4、np.load()

Numpy能够读写磁盘上的文本数据或二进制数据。

将数组以二进制格式保存到磁盘

np.load和np.save是读写磁盘数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为.npy的文件中。

import numpy as np
A = np.arange(15).reshape(3,5)
print(A)
np.save('A.npy',A) #如果文件路径末尾没有扩展名.npy,该扩展名会被自动加上。
C = np.load('A.npy')
print(C) 结果: [[ 0  1  2  3  4]
 [ 5  6  7  8  9]
 [10 11 12 13 14]]
[[ 0  1  2  3  4]
 [ 5  6  7  8  9]
 [10 11 12 13 14]]

注:保存为Numpy专用的二进制格式后,就不能用notepad++等打开看了(乱码)。因此这种方式建议在不需要看保存文件内容的情况下使用。

5、tf.split()

tf.split函数

split(
value,
num_or_size_splits,
axis=0,
num=None,
name='split'
)

定义在:tensorflow/python/ops/array_ops.py。

参见指南:张量变换>切割和连接

将张量分割成子张量。

如果 num_or_size_splits 是整数类型,num_split,则 value 沿维度 axis 分割成为 num_split 更小的张量。要求 num_split 均匀分配 value.shape[axis]。

如果 num_or_size_splits 不是整数类型,则它被认为是一个张量 size_splits,然后将 value 分割成
len(size_splits) 块。第 i 部分的形状与 value 的大小相同,除了沿维度 axis 之外的大小
size_splits[i]。

例如:

Split 'A' into 2 tensors along dimension 1
import tensorflow as tf
import numpy as np
A = [[1,2,3],[4,5,6]]
x = tf.split(A, num_or_size_splits=2, axis=0)
with tf.Session() as sess:
c = sess.run(x)
print(c)
for ele in c:
print(ele) 结果:
[array([[1, 2, 3]]), array([[4, 5, 6]])]
[[1 2 3]]
[[4 5 6]]
# Split 'value' into 2 tensors with sizes [1,2] along dimension 1
import tensorflow as tf
import numpy as np
A = [[1,2,3],[4,5,6],[1,2,3],[1,2,3],[1,2,3]]
x = tf.split(A, [1,2], axis=1)
with tf.Session() as sess:
c = sess.run(x)
print(c)
for ele in c:
print(ele)
结果:
[array([[1],
       [4],
       [1],
       [1],
       [1]]), array([[2, 3],
       [5, 6],
       [2, 3],
       [2, 3],
       [2, 3]])]
[[1]
 [4]
 [1]
 [1]
 [1]]
[[2 3]
 [5 6]
 [2 3]
 [2 3]
 [2 3]]

函数参数:


  • value:要分割的 Tensor。
  • num_or_size_splits:指示沿 split_dim 分割数量的 0-D 整数 Tensor 或包含沿 split_dim 每个输出张量大小的 1-D 整数 Tensor ;如果为一个标量,那么它必须均匀分割 value.shape[axis];否则沿分割维度的大小总和必须与该 value 相匹配。
  • axis:A 0-D int32 Tensor;表示分割的尺寸;必须在[-rank(value), rank(value))范围内;默认为0。
  • num:可选的,用于指定无法从 size_splits 的形状推断出的输出数。
  • name:操作的名称(可选)。

函数返回值:


如果 num_or_size_splits 是标量,返回 num_or_size_splits Tensor对象;如果 num_or_size_splits 是一维张量,则返回由 value 分割产生的 num_or_size_splits.get_shape[0] Tensor对象。


函数可能引发的异常:


  • ValueError:如果 num 没有指定并且无法推断。


 

vgg16中的函数的更多相关文章

  1. Oracle 中 decode 函数用法

    Oracle 中 decode 函数用法 含义解释:decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义如下:IF 条件=值1 THEN RETURN(翻译 ...

  2. mysql中now()函数的使用,还有oracle的sysdate,可能埋下的坑

    mysql中now()函数的使用,还有oracle的sysdate 在需求中如果系统中药添加当前操作的时间那么很简单的一个操作在写sql的时候直接在这个字段对应的位置写上now()函数就可以了,这样就 ...

  3. 程序代码中退出函数exit()与返回函数return ()的区别

    程序代码中退出函数exit()与返回函数return ()的区别   exit(0):正常运行程序并退出程序:   exit(1):非正常运行导致退出程序:   return():返回函数,若在主函数 ...

  4. mysql中find_in_set()函数的使用

    首先举个例子来说: 有个文章表里面有个type字段,它存储的是文章类型,有 1头条.2推荐.3热点.4图文等等 .现在有篇文章他既是头条,又是热点,还是图文,type中以 1,3,4 的格式存储.那我 ...

  5. QT中使用函数指针

    想仿命令行,所以定义了一个类,让一个String 对应一个 function,将两者输入list容器. 类中定义了 QString commandStr; void (MainWindow::*com ...

  6. Bash 是如何从环境变量中导入函数的

    在上文中曾说到: 所谓的环境变量的真实面目其实就是个任意字符串 Bash 在启动时会将 environ 数组中包含 = 号的字符串导入成为自己的变量 Bash 在启动外部命令时会将自己内部标记为环境变 ...

  7. JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解

    二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...

  8. PHP中spl_autoload_register()函数的用法

    spl_autoload_register (PHP 5 >= 5.1.2) spl_autoload_register — 注册__autoload()函数 说明 bool spl_autol ...

  9. matlab中patch函数的用法

    http://blog.sina.com.cn/s/blog_707b64550100z1nz.html matlab中patch函数的用法——emily (2011-11-18 17:20:33) ...

随机推荐

  1. AJAX 初识

    AJAX全称为 Asynchronous Javasript And XML,是在浏览器端进行网络编程(发送请求,接收响应)的技术方案.AJAX 也就是浏览器提供的一套API,可以供 Javascri ...

  2. JAVA - 普通类读取WEB-INF里面配置文件

    服务器:Tomcat 9 注意问题:配置文件应该放入Tomcat的正式工程目录中测试. 可用代码: package com.daoen.rtis.test; import java.io.FileRe ...

  3. FreeRTOS优先级翻转

    举例 //高优先级任务的任务函数 void high_task(void *pvParameters) { while(1) { vTaskDelay(500); //延时500ms,也就是500个时 ...

  4. 从学习“单例模式”学到的Java知识:双重检查锁和延迟初始化

    一切真是有缘,上午刚刚看完单例模式,还在为其中的代码块同步而兴奋,下午就遇见这篇文章:双重检查锁定与延迟初始化.我一看,文章开头语出惊人,说这是一种错误的优化,我说,难道上午学的东西下午就过时了吗?仔 ...

  5. 听说你知道什么是锁 --JAVA

    I.java中的锁 1.1 什么是锁 ​ 在计算机科学中,锁(lock)与互斥(mutex)是一种同步机制,用于在许多线程执行时对资源的限制. ​ 锁通常需要硬件支持才可以有效实施.这种支持通常采用一 ...

  6. ssh本机失败(ssh: connect to host localhost port 22: Connection refused)

    ssh本机失败(ssh: connect to host localhost port 22: Connection refused) 一. 问题描述 之前一直在服务上使用宝塔面板, 今天突发奇想, ...

  7. IDG资本

    https://baike.baidu.com/item/IDG/10412 美国国际数据集团(International Data Group) 是全世界最大的信息技术出版.研究.发展与风险投资公司 ...

  8. 初学Django基础01 建立工程,目录结构,常用配置,上下文管理,模板渲染

    django是python的web重量级框架,发展已经有10年多了,对应下面版本 Django 版本 Python 版本 1.8 2.7, 3.2 , 3.3, 3.4, 3.5 1.9, 1.10 ...

  9. .net框架-数组(Array)& ArrayList & List

    数组(Array)特点: 初始化时规定长度 元素类型相同 数据存储连续,效率高 System.Collections.ArrayList : 初始化时无需规定长度,长度随存储的数据动态扩充与收缩 元素 ...

  10. js弹窗输入

    <html> <head> <title>js输入对话框</title> </head> <body> <script l ...