假设我有一个以下结构的简单包:
cython_functions/
__init__.py
fib.pyx
Run Code Online (Sandbox Code Playgroud)
其中fib.pyx
包括:
def fib(int n):
fiblist = [0, 1]
a, b = fiblist
while b < n:
a, b = b, a + b
fiblist.append(b)
return fiblist
Run Code Online (Sandbox Code Playgroud)
并__init__.py
包含:
import pyximport
pyximport.install()
from cython_functions.fib import fib
Run Code Online (Sandbox Code Playgroud)
如果我做了任何更改,fib.pyx
每当我尝试导入包时,我都会得到一大堆编译器警告:
/Users/andfranklin/.pyxbld/temp.macosx-10.6-intel-3.5/pyrex/cython_functions/fib.c:1687:28: warning: unused function '__Pyx_PyObject_AsString' [-Wunused-function]
static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {
^
/Users/andfranklin/.pyxbld/temp.macosx-10.6-intel-3.5/pyrex/cython_functions/fib.c:1684:32: warning: unused function '__Pyx_PyUnicode_FromString' [-Wunused-function]
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
^
.
.
.
Run Code Online (Sandbox Code Playgroud)
有没有简单的方法可以抑制它们?在另一个问题中,他们描述了如何通过.pyxbld
文件传递编译器标志.我可以创建 …
听起来很傻,我想在SymPy中使用复合希腊字母作为单个符号.例如,如果在Jupyter笔记本中输入以下内容:
import sympy as sp
ab = sp.Symbol("alpha beta")
sp.pprint(ab)
Run Code Online (Sandbox Code Playgroud)
ab
在符号操作中使用时表现得很好,但输出是:
alpha beta
Run Code Online (Sandbox Code Playgroud)
我希望输出为:
???
Run Code Online (Sandbox Code Playgroud)
我可以在操作后使用subs命令,如下所示:
ab.subs({ab : sp.Symbol("alpha") * sp.Symbol("beta")})
Run Code Online (Sandbox Code Playgroud)
但这很乏味且不受欢迎.
我正在Jupyter制作一些笔记本,我决定用Bokeh创建互动图.真正让我感到困惑的两件事是图中左上角印有的图标,以及运行后打印的图标output_notebook()
.我想删除这些以帮助减少视觉混乱.
这是一个简单的脚本,可以在Jupyter中运行,演示我的问题:
import numpy as np
from bokeh.plotting import *
output_notebook()
N = 100
x = np.linspace(0, 4*np.pi, N)
y = np.sin(x)
TOOLS = "pan,wheel_zoom,box_zoom,reset,save,box_select"
p1 = figure(title="Legend Example", tools=TOOLS)
p1.circle(x, y, legend="sin(x)")
p1.circle(x, 2*y, legend="2*sin(x)", color="orange", )
p1.circle(x, 3*y, legend="3*sin(x)", color="green", )
show(p1)
Run Code Online (Sandbox Code Playgroud)
这是我的机器上此代码的输出.