Mathematica制作和使用程序包
步骤
这里拿你制作并且使用一个程序包lost为例子
新建一个空白.wl文档,输入代码如下
BeginPackage[ "MyPkg`"]
MainFunction::usage =
"MainFunction[ x] computes a simple function."
Begin[ "Private`"]
MainFunction[ x_] :=
Module[ {y},
y = x^2;
y + 1
]
End[]
EndPackage[]
把.wl文件另存为lost.wl,随便放哪里
然后新建个nb文档,
如果你保存位置在某个$Path之下,输入 <<lost.wl 就能导入
如果你是随便存放的,举个例子,你应该 <<"C:/dir1/dir2/lost.wl" 导入
?MyPkg`* 来看此程序包内有哪些函数
之后 MainFunction[10] 来测试是否导入
Tips
<< 是Get的语法糖
$Path 给出在试图找到一个外部文件时搜索的缺省目录列表
$Path 这样的叫做环境变量,这么写也行 Environment["Path"].当然你Linux玩的溜的话你绝对会选择第一种写法
下面这些我还没有弄懂:
$Context 是一个给出当前上下文的全局变量.
$Packages 给出与您当前 Wolfram 系统会话中加载的所有软件包相应的上下文列表.
$ContextPath 是一个全局变量,它提供在 $Context 之前待搜索的上下文列表以试图找到已经输入的符号.
Needs,Get,这些地方乱得很,还有.m,.wl,.wls
分得清当然更好,本篇文章对您一点帮助也没有。
参考
Mathematica 程序包 package,这篇博客对我帮助很大
官方文档,对我没什么帮助老实说
Mathematica制作和使用程序包的更多相关文章
- C# 批处理制作静默安装程序包
使用批处理+WinRAR制作静默安装程序包 @echo 安装完窗口会自动关闭!!! @echo off start /wait Lync.exe /Install /Silent start /wai ...
- Linux程序包管理之rpm
rpm简介 rpm( Red Hat Package Manager )是一个开放的软件包管理系统.它工作于Red Hat Linux及其他Linux系统,成为Linux中公认的软件包管理标准. rp ...
- 如何在windows中编写R程序包(转载)
网上有不少R包的编译过程介绍,挑选了一篇比较详细的,做了稍许修改后转载至此,与大家分享 如何在windows中编写R程序包 created by helixcn modified by binaryf ...
- 制作Linux下程序安装包——使用脚本打包bin、run等安装包
制作简单的安装包的时候可以简单的用cat命令连接两个文件,然后头部是脚本文件,执行的时候把下面的文件分解出来就行了.一般这个后部分的文件是个压缩 包,那样,就能够打包很多文件了,在脚本中解压出来即可. ...
- Wix打包系列 (六)制作升级和补丁包
原文:Wix打包系列 (六)制作升级和补丁包 前面我们已经知道怎么制作一个完整安装包了,但我们的软件往往不能一次性就满足客户的需要,当客户需要我们给软件进行升级的时候,我们应该怎么做呢? 在这之前,我 ...
- 程序包管理rpm、yum与简单编译安装程序
Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...
- Linux程序包管理rpm与yum
Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...
- Linux:Day10 程序包管理
YUM:yellow dog,Yellowdog Update Modifier yum repository:yum repo 存储了众多rpm包,以及包的相关的无数据文件(放置于特定目录下:rep ...
- 想拥有自己的Python程序包,你只需15步
来源商业新知网,原标题:15步,你就能拥有自己的Python程序包 全文共 3192 字,预计学习时长 6 分钟 每个软件开发员和数据科学家都难免要做程序包.本文推荐一篇 Python开源程序包的制作 ...
- Linux:Day9(下) 程序包管理
API:Application Programming Interface POSIX:Portable OS 程序源代码 --> 预处理 --> 编译 --> 汇编 --> ...
随机推荐
- Excel Vlookup用法和常见报错#REF! #Value!
VLOOKUP(E2,$A$2:$C$5,2,FALSE) E2 为选中查找的条件 $A$2:$C$5 1为需要查找的区域,这个区域一般是固定的,所以要加上$符号 2这个区域可以在前面加上SHEET2 ...
- MVC+EF API 跨域
MVC+EF API --2 一. MVC+EF 不管是MvcHAIS Ef 都有文件夹Controller 二.Link查询 多表联查 匿名类型 三.Postman使用 四.mvc访问使用API 跨 ...
- 在Unity3D中开发的Rim Shader
Swordmaster Rim Shaders 特点 本资源包共包含两种Rim效果的Shader (1)Rim Bumped Specular. (2)Rim StandardPBR(Metallic ...
- 第一个知识点:import 和 export
//全部导入import people from './example' //有一种特殊情况,即允许你将整个模块当作单一对象进行导入//该模块的所有导出都会作为对象的属性存在import * as e ...
- Unity C#代码入门
Unity C#代码入门 1. 脚本基本结构 1.1 unity生成的模板 using System.Collections; using System.Collections.Generic; us ...
- 第12章 使用 Entity Framework Core 保存数据(ASP.NET Core in Action, 2nd Edition)
本章包括(请点击这里阅读其他章节) 什么是实体框架核心以及为什么应该使用它 向 ASP.NET Core 应用程序添加实体框架核心 构建数据模型并使用它创建数据库 使用实体框架核心查询.创建和更新数据 ...
- 当前SAT主要关键技术及其相关文献2022-11-1
摘录自: Tasniem Nasser Al-Yahya, Mohamed El Bachir Menai, Hassan Mathkour:Boosting the Performance of C ...
- vue下载图片
async works(obj) { await this.axios({ method: 'get', url: `entryFormControll ...
- 浏览器对象模型(BOM)中的History对象模型
- 使用NTC计算温度,增加计算精度的算法
uint16_t uGetPCB_Temperature(void) { uint16_t x; float Adcn; float k; Adcn = userADC_var.ADCMeasureV ...