tensorflow代码中tf.app.run()什么意思

在看别人的tensorflow代码时,经常会碰到最后的执行入口会写成下面这样:

# 前面的代码省略了...
。。。
。。。
。。。
def main(argv=None):
    mnist = input_data.read_data_sets("F:\mydata\TensorFlowData\MNIST_data", one_hot=True)
    train(mnist)

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

那么 tf.app.run()什么意思呢 ?可以猜到,应该是函数入口,类似于c/c++中的main()
说白了,有两种情况:

  • 如果你的代码中的入口函数不叫main(),而是一个其他名字的函数,如test(),则你应该这样写入口tf.app.run(test)
  • 如果你的代码中的入口函数叫main(),则你就可以把入口写成tf.app.run() 如果我们什么都不填tf.app.run()中默认是main(main参数表示是调用main函数本事,调用函数整体,调用函数对象)

附注 python中函数名加括号和不加括号的区别

一、不带括号时,调用的是这个函数本身 ,是整个函数体,是一个函数对象,不需要等该函数执行完成。
二、带括号(参数或者无参),调用的是函数的执行结果,须等该函数执行完成的结果。

 

参考博客

https://mp.csdn.net/postedit/102969683

https://blog.csdn.net/fxjzzyo/article/details/80466321

https://blog.csdn.net/helei001/article/details/51859423
https://blog.csdn.net/lujiandong1/article/details/53262612

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值