码迷,mamicode.com
首页 > 编程语言 > 详细

Python的__main__.py用法

时间:2014-10-24 12:51:42      阅读:460      评论:0      收藏:0      [点我收藏+]

标签:blog   http   os   ar   strong   sp   文件   div   2014   

【背景】

在看flower的时候看到__main__.py文件,不知道具体做什么用?

故先进行测试看看。

 

【测试代码】

测试代码目录结构如下:

.
`-- test
    |-- __init__.py
    |-- __main__.py
    |-- dep.py

__init__.py为空,表示test是一个package

__main__.py内容如下:

[root@typhoeus79 ice_test_m 20141024]# more test/__main__.py 
#!/usr/bin/env python2.7
#-*- coding:utf8 -*

from __future__ import absolute_import

from .dep import Depclass

adep = Depclass()

  

dep.py内容如下:

[root@typhoeus79 ice_test_m 20141024]# more test/dep.py
class Depclass(object):
    def __init__(self):
        print "Init Depclass"

  

直接运行__main__.py的时候出现错误:

[root@typhoeus79 ice_test_m 20141024]# ./test/__main__.py 
Traceback (most recent call last):
  File "./test/__main__.py", line 6, in <module>
    from .dep import Depclass
ValueError: Attempted relative import in non-package

  

这个错误之前也遇到过

http://i.cnblogs.com/EditPosts.aspx?postid=4030852

包含相对路径import 的python脚本不能直接运行,只能作为module被引用。

 

如果想运行的话,需要这样操作:

[root@typhoeus79 ice_test_m 20141024]# python2.7 -m test.__main__    
Init Depclass

  

Python的__main__.py用法

标签:blog   http   os   ar   strong   sp   文件   div   2014   

原文地址:http://www.cnblogs.com/gsblog/p/4047831.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!