• Python ValueError: Attempted relative import in non-package Relative import相对引用 错误


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

    from . import  mod1
    

    有这样代码的文件只能最为moulule为不能直接运行。相对路径就是相对于module的路径,如果直接运行脚本,这个module的那么就是"main",而不是module原来的name,这样相对路径就不是原来的相对路径了,导入就会失败,出现

    ValueError: Attempted relative import in non-package
    

    ok you get what you want
    模块和包

    1. python程序由包(package)、模块(module)和函数组成。
    2. 包是由一系列模块组成的集合。当不同作的模块进行按文件夹分类后再组成一个整体的库,可以称为包。为了让Python将目录当做内容包,目录中必须包含__init__.py文件,用于标识当前文件夹是一个包。最简单的情况下,只需要一个空的__init__.py文件即可。包就是一个完成特定任务的工具箱,包的作用是实现程序的重用。包导入会让模块扮演的角色更为明显,也使代码更具有可读性。
    3. 模块是处理某一类问题的函数和类的集合,由代码、函数和类组成。函数是一段可以重复多次调用的代码。模块把一组相关的函数或代码组织到一个文件中,一个文件即是一个模块。每个模块文件是一个独立完备的命名空间,一个模块文件不能看到其他文件定义的变量名,除非它明确地导入了那个文件,模块文件起到了最小化命名冲突的作用。
  • 相关阅读:
    高效真实的云渲染算法 【转】
    网络字节顺序 【转】
    Windows网络编程 2 【转】
    windows 网络编程[转]
    电信诈骗
    winsock 收发广播包 【转】
    windows核心编程 DLL技术 【转】
    CityEngine结合ArcGIS制作地质体web场景 [转]
    共有49款Windows GUI开发框架开源软件 【转】
    详解分级基金(杠杆基金)【精华】 【转】
  • 原文地址:https://www.cnblogs.com/vercont/p/10210186.html
Copyright © 2020-2023  润新知