AnyMath 文档

朱莉娅的环境 AnyMath

advanced users cn

营办商 进口使用 它们在代码和上传文件的上下文中有所不同,具体取决于当前环境。 Julia中有两种类型的环境:

*Project environment(项目环境)是一组文件和设置,用于定义特定项目的开发和执行的环境。 项目环境包括在项目中使用的设置和依赖项。 在Julia中,项目环境是使用项目定义的。汤姆和清单。toml文件,其中包含有关依赖项及其版本的信息。:

+

**项目文件(Project.toml)是一个包含有关项目直接依赖关系的信息的文件。 它定义了项目中使用的名称和标识符(例如,包名称)。 此文件通常只包含直接依赖项及其版本。

+

**清单文件(Manifest.toml)是描述项目依赖关系的完整图(数据结构)的文件(如果存在)。 不仅包括直接依赖关系,还包括项目中使用的所有间接依赖关系。 对于每个依赖项,指定了确保项目源代码与其依赖项版本兼容所需的确切版本(例如,包)和其他信息。

*项目目录(project directory)是包含项目文件和结构的地方,包括源代码、设置、配置文件和包集。 项目环境是由项目目录内的文件和目录结构自然形成的。 该目录包含组织到子目录层次结构中的包和模块。 如果包目录内有文件 包名。jl 在子目录中 src公司 -这意味着包 包装名称 它在这个项目中是可用的,它的代码是通过这个文件上传的。

因此,项目环境是项目依赖项所在的抽象环境,而项目目录是项目文件物理存储的地方。 阅读更多 上传代码.

Julia环境定义了哪些包和依赖项应该可用于特定的项目或应用程序。 然后LOAD_PATH用作路径数组,告诉Julia在哪里查找与此环境相关的包和模块。:

**LOAD_PATH[1]*是path数组的第一个元素,它指定用户环境文件的路径。 自定义清单。toml和项目。toml文件指定此项目需要哪些包和哪些版本。 LOAD_PATH本身在添加包(Pkg)时也不会改变。添加)或更改toml环境文件时。 默认情况下,用户环境是沿着路径创建的 /用户/。工程项目. 这允许Julia查找并下载在给定项目中执行代码所需的包。

**LOAD_PATH[2]*是path数组的第二个元素,它指定系统环境文件的路径。 LOAD_PATH[2]指定所有项目可用且独立于特定项目的系统包的路径。 Manifest等全局toml文件的路径。toml和项目。LOAD_PATH[2]元素中不包含toml。 而是指定包含这些文件的目录的路径。 因此,可以从任何项目访问系统安装的软件包,而不管在其自己的项目和清单文件中列出了哪些软件包。 默认情况下,系统环境是沿着路径创建的 /用户/本地/julia-1。M.N/环境/v1。M/,在哪里 MN -当前项目中的Julia版本。

LOAD_PATH不仅可以包含path数组的两个元素,还可以包含指向包所在目录的任意数量的路径。 当朱莉娅正在寻找一个包下载使用 使用进口 它检查LOAD_PATH中指定的所有路径。

除了LOAD_PATH,还有loaded_modules包的子集。 loaded_modules(已加载模块)是指当前Julia会话中当前处于活动状态的模块(或包)列表。 每个模块都是一组已加载并准备在代码中使用的函数和数据。

因此,Julia可以从所有环境下载和使用必要的包,这些路径在LOAD_PATH数组的元素中指定。 功能 基地。loaded_modules 检索已加载模块的列表。 为了更好的感知,下面的图片呈现。:

julia libs 1

Julia可以使用LOAD_PATH[1]和LOAD_PATH[2]路径数组元素中指定的路径下载和使用项目所需的包。 然后使用 使用进口:

  • 使用 -使用 使用 如有必要,加载模块并使其导出的所有符号在当前命名空间中可用。 使用 将模块加载到内存中并将其添加到已加载模块列表(loaded_modules)中,这意味着其函数和变量可以直接在代码中使用。 当您需要频繁使用模块中的函数或变量而无需再次指定其名称时,这很有用。

  • 进口 -使用 进口 如果您需要加载模块,但不需要将其所有符号导入当前命名空间。 进口 它不会将模块加载到内存中或将其添加到loaded_modules中,而是创建一个引用,允许通过限定名称使用符号。 使用方法 进口 如果只需要模块中的某些符号,或者必须显式指定其来源以避免名称冲突。

所以主要的区别在于 使用 加载和导入模块的所有导出符号,而 进口 创建到模块的链接,允许您选择要使用的字符。