小编And*_*lin的帖子

使用pyximport.install时是否有一种干净的方法来抑制Cython的编译器警告?

假设我有一个以下结构的简单包:

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文件传递编译器标志.我可以创建 …

python cython

15
推荐指数
1
解决办法
882
查看次数

是否有正确的方法将复合希腊字母设置为SymPy中的符号?

听起来很傻,我想在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)

但这很乏味且不受欢迎.

python sympy jupyter

7
推荐指数
1
解决办法
4139
查看次数

从Jupyter中嵌入的数字中删除Bokeh图标?

我正在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)

是我的机器上此代码的输出.

python bokeh jupyter jupyter-notebook

4
推荐指数
1
解决办法
2447
查看次数

标签 统计

python ×3

jupyter ×2

bokeh ×1

cython ×1

jupyter-notebook ×1

sympy ×1