我刚开始尝试使用vpython,希望最终用它来模拟椭圆或抛物线轨道。我下载了模块并尝试生成一个简单的球体,当我这样做时,我得到了上述错误。据我所知,我已正确定义/调用了该函数。这是我的代码
from vpython import *
Sun = sphere(pos=(0,0,0), radius =0.5))
答案 0 :(得分:0)
vpython 旨在在IPython笔记本内部运行(这是一个交互式Python环境,带有通过浏览器使用的图形界面 - 将其视为更强大的图形化python控制台)。
当您在普通的Python REPL中使用vpython时,public class RestDataSource implements WyatRepository {
public final static String ENDPOINT = "http://xxxxxxxx.com/";
private final ApiService apiService;
public RestDataSource() {
OkHttpClient client = new OkHttpClient();
HttpLoggingInterceptor loggingInterceptor = new HttpLoggingInterceptor();
loggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
client.interceptors().add(loggingInterceptor);
client.interceptors().add(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Request original =chain.request();
Request request = original.newBuilder().header("Authorization",new SharedPreferencesUtil(getBaseContext()).getToken)
.method(original.method(),original.body())
.build();
return null;
}
});
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(ENDPOINT)
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.client(client)
.build();
apiService = retrofit.create(ApiService.class);
}
@Override
public Observable<Album> getAlbum(int id) {
return apiService.getAlbum(id);
}
@Override
public Observable<List<Event>> getEvents() {
return apiService.getEvents();
}
@Override
public Observable<Event> getEvent(int id) {
return apiService.getEvent(id);
}
函数会返回get_ipython()
,从而导致错误。
获取IPython的最简单方法是按照http://jupyter.org/所述安装Jupyter。然后使用None
启动它,这将打开一个浏览器页面,您可以在其中编写代码并且它应该可以正常工作。
答案 1 :(得分:0)
有许多方法可以安装vpython。取决于您的操作系统。在Mac和Windows系统上以图形方式安装vpython很简单(以及如何运行已安装的可执行文件)。我将解释如何在Ubuntu 16上安装vpython。我假设你已经安装了python。 1.)vpython依赖于PIP(用于安装.py软件包的软件包管理器)。所以首先使用命令 sudo apt install python-pip 来安装带有admin权限的python-pip包。 2.)从命令行安装pip后,使用pip通过以下命令安装vpython: sudo pip install vpython (也使用admin privs')。确保使用以下命令将pip升级到最新版本: sudo pip install --upgrade pip 3.)接下来的步骤需要解决任何一个错误(' NoneType'对象已经尝试从vpython import * 执行命令时,python或IDLE抛出没有属性'kernel')和/或(没有名为visual 的模块) strong>来自visual import * 使用python或IDLE。抛出错误是因为vpython不是普通的.py包(包含典型的类或函数语句),但是vpython是一个安装必需包的脚本,称为jupyter-notebook (带有“y”和“ - ”)。 jupyter-notebook包实际上是解释你的vpython创建的.py文件。 4.)在终端中键入命令 jupyter-notebook 。此脚本将使终端提供本地可访问的地址,您将输入到支持Javascript的Web浏览器中,并且还依赖于WebGL浏览器插件支持。 5.)接下来按照vpython.org提供的说明,您需要选择“新建”下拉列表(位于jupyter浏览器页面右上角附近)并单击笔记本下的“Vpython”选项。 6.)在给定的提示符下键入python命令,就像使用python interpreter或IDLE一样。
答案 2 :(得分:-2)
模块的名称似乎是“视觉”,而不是“vpython”。
试试这个:
from visual import *
Sun = sphere(pos=(0,0,0), radius=0.5))
http://www.vpython.org/contents/docs_vp5/visual/VPython_Intro.pdf