小编dan*_*van的帖子

测试Python C库 - 获取构建路径

使用setuptools/distutils在Python中构建C库时

$ python setup.py build
Run Code Online (Sandbox Code Playgroud)

*.so/*.pyd文件放置在build/lib.win32-2.7(或等同物).

我想在我的测试套件中测试这些文件,但我不想硬编码build/lib*路径.有没有人知道如何从distutils拉这条路径所以我可以sys.path.append(build_path)- 或者有更好的方法来获取这些文件?(没有先安装它们)

python distutils setuptools

14
推荐指数
3
解决办法
1343
查看次数

在matplotlib图中绘制平滑曲线

我正在使用python读取netcdf文件,需要在python中使用matplotlib库绘制图形.netcdf文件包含3个变量uv和w组件.我必须在垂直范围内绘制这3个组件.因为这些数据将用于天气预报雷达.我需要在拐角处用光滑的曲线绘制这些图形.现在的情节看起来喜欢 而代码是......

from netCDF4 import Dataset
from pylab import *
import numpy  
from scipy import interpolate
from scipy.interpolate import spline


#passing the filename

root_grp=Dataset('C:\\Python27\\MyPrograms\\nnt206rwpuvw.nc')

#getting values of u component
temp1 = root_grp.variables['ucomponent']
data1 = temp1[:]
u=data1[0]

#getting values of v component
temp2 = root_grp.variables['wcomponent']
data2 = temp2[:]
v=data2[0]
#getting values of w component
temp3 = root_grp.variables['wcomponent']
data3 = temp3[:]
w=data3[0]
#creating a new array
array=0.15*numpy.arange(1,55).reshape(1,54)
#aliasing
y=array[0]
#sub-plots
f, (ax1, ax2, ax3) = plt.subplots(1,3, sharey=True)
ax1.plot(u,y,'r')
ax2.plot(v,y,'g')
ax3.plot(w,y,'b')
#texts
ax1.set_title('u …
Run Code Online (Sandbox Code Playgroud)

python matplotlib netcdf

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

如何生成具有泊松分布的离散随机事件?

我知道Knuth用于生成随机泊松分布数的算法(在Java下面)但是我如何将其转换为generateEvent()随机调用方法?

int poissonRandomNumber(int lambda) {
    double L = Math.exp(-lambda);
    int k = 0;
    double p = 1;
    do {
        k = k + 1;
        double u = Math.random();
        p = p * u;
    } while (p > L);
    return k - 1;
}
Run Code Online (Sandbox Code Playgroud)

java simulation events poisson

8
推荐指数
1
解决办法
9016
查看次数

导入__init__.py中的文件

我将我的test.py文件拆分成多个文件,比如

app
app\models.py
app\views.py
app\tests
app\tests__init__.py
app\tests\test_bananas.py
app\tests\test_apples.py
Run Code Online (Sandbox Code Playgroud)

和导入如下__init__.py:

from test_bananas import BananasTest
from test_apples import ApplesTest
Run Code Online (Sandbox Code Playgroud)

pyflakes给我错误

modules/app/tests/__init__.py:5: [E] PYFLAKES:'BananasTest' imported but unused
modules/app/tests/__init__.py:5: [E] PYFLAKES:'ApplesTest' imported but unused
Run Code Online (Sandbox Code Playgroud)

试过这个也

from test_bananas import *
from test_apples import *
Run Code Online (Sandbox Code Playgroud)

再次pyflakes给我错误

PYFLAKES:'from test_bananas import *' used; unable to detect undefined names
PYFLAKES:'from test_apples import *' used; unable to detect undefined names
Run Code Online (Sandbox Code Playgroud)

python django import

7
推荐指数
5
解决办法
6709
查看次数

安装了哪个版本的结构API

我如何通过API发现我安装的结构版本?

我明白我可以跑了

$ fab --version
Run Code Online (Sandbox Code Playgroud)

但我宁愿做类似的事情

>>> import fabric
>>> fabric.version
'1.4.1'
Run Code Online (Sandbox Code Playgroud)

python fabric

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

多个y刻度,但只有一个启用平移和缩放

考虑以下用于绘制matplotlib图的python代码:

import matplotlib.pylab as pp
import numpy as np

alpha = np.linspace(0, 2 * np.pi, 400)
sig1 = np.sin(alpha)
sig2 = np.sin(2 * alpha) + 2 * (alpha > np.pi)

ax1 = pp.subplot(111)
ax2 = ax1.twinx()

ax1.plot(alpha, sig1, color='b')
ax2.plot(alpha, sig2, color='r')
ax1.set_ylabel('sig1 value', color='b')
ax2.set_ylabel('sig2 value', color='r')
pp.grid()
pp.show()
Run Code Online (Sandbox Code Playgroud)

给我一个很好的情节

在此输入图像描述

我想了解如何禁用其中一个轴进行平移/缩放,因此当我使用平移/缩放工具时,只有ax2会重新缩放.有没有办法做到这一点?我想以编程方式进行.

python plot zoom matplotlib

6
推荐指数
1
解决办法
948
查看次数

在django模板中渲染HTML(不是unicode而是ASCII)

我知道这有点不正常,但我有一个遗留数据库,其中一些条目为格式化的html.我想把它作为ASCII推入我的django模板,让浏览器显示它.

Django将我的字段转换为unicode,因此浏览器<p> </p>完整地显示整个文本等.

我希望可能有一个模板标志{{ obj.text|ascii }}或可以解决这个问题的东西 - 有没有人有任何想法?谢谢.

python django templates

5
推荐指数
1
解决办法
4087
查看次数

在ribs.js的另一个视图中使用listenTo时不起作用

我是骨干网的新手。我有一个名为AbcView abc.js的视图

var AbcView = Backbone.View.extend({

    events: {
        "click" : "display",
    },
    display: function(e){
        console.log("hello");
        alert("click function");
    }
});
Run Code Online (Sandbox Code Playgroud)

现在,我将此abc.js传递到另一个xyz.js文件,并使用ListenTo在另一个视图中调用它。

xyz.js

var xyzView = Backbone.View.extend({
    initialize: function(){
        var AbcView = new AbcView ();
        this.lisenTo(AbcView, "click",this.display);
    },
    render: function(){
        var html = this.template(AbcView);
        this.$el.html(html);
        return this;
    },
    display: function(e){
        console.log("parent hello");
        alert("parent display function");
    }
});
Run Code Online (Sandbox Code Playgroud)

使用abc.js,点击事件可以正常触发。但是使用xyz.js时,不会触发click事件。

这是调用listenTo的正确方法吗?

backbone.js

5
推荐指数
1
解决办法
3756
查看次数

Django自定义响应标头

我需要在Django项目中设置自定义响应标头。

这是来自facts / urls.py的代码:

d = {
    'app_name': 'facts',
    'model_name': 'Fact'
}

urlpatterns = patterns('',
    (r'^$', 'facts.main', d),
)
Run Code Online (Sandbox Code Playgroud)

这种方法显示模型中的数据,但是我不确定是否可以在此处设置自定义标头?

我还尝试了另一种方法-我使用以下功能创建了facts / views.py:

def fact(request):

    response = render_to_response('facts.html', 
                                  {'app_name': 'facts',
                                   'model_name': 'Fact'}, 
                                  context_instance=RequestContext(request))

    response['TestCustomHeader'] = 'test'

    return response
Run Code Online (Sandbox Code Playgroud)

并更改了urls.py中的代码:

(r'^$', facts.views.fact),
Run Code Online (Sandbox Code Playgroud)

此方法设置自定义标头,但不显示模型中的数据。

有什么帮助吗?

python django custom-headers

5
推荐指数
1
解决办法
8397
查看次数

pathlib追加模式下的路径`write_text`

python pathlib.Path对象write_text()在添加模式下有快捷方式吗?

如果该文件存在,则标准open()函数必须mode="a"打开文件以进行写入和追加,并且Paths .open()函数似乎具有相同的功能(my_path.open("a"))。

但是,便捷的.write_text('..')快捷方式又如何呢?有没有一种方法可以用来pathlib完成打开和追加文件的操作open()呢?

为了清楚起见,我可以

with my_path.open('a') as fp:
    fp.write('my text')
Run Code Online (Sandbox Code Playgroud)

但是还有另一种方法吗?

my_path.write_text('my text', mode='a')

python python-3.x pathlib

5
推荐指数
3
解决办法
463
查看次数