python 连续不等式语法糖实例
通常在多个不等式的时候,需要分着写,比如
x = 1if x>0 and x<3: print(True)
但是在Python中居然可以连着一起写,
x = 1if 0<x<3: print(True)
补充知识:python不等比等值线实现
我就废话不多说了,大家直接看代码吧!
import numpy as npimport matplotlib.pyplot as pltdx=1dy=1x=np.arange(-2.0,2.0,dx)#y=np.arange(-3.0,3.0,dy)#这里的x,y是长度不相等的列表X,Y=np.meshgrid(x,y)def f(x,y):return(1-y5+x5)*np.exp(-x2-y2)plt.grid(True)#显示网格C=plt.contour(X,Y,f(X,Y),8,colors=‘black’) #生成等值线图ct=plt.contourf(X,Y,f(X,Y),8)#填充等值线plt.clabel(c,fontsize=10,colors=‘k’)#设置显示文字plt.colorbar(ct)#设置颜色条,(显示在图片右边)plt.show()关键就是contour,与contourf这两个函数,如下面所示,这两个函数的三个参数的形状必须是相同的,如下图X、Y、f(X,Y)都是(6,4)。>>> Xarray([[-2., -1., 0., 1.],[-2., -1., 0., 1.],[-2., -1., 0., 1.],[-2., -1., 0., 1.],[-2., -1., 0., 1.],[-2., -1., 0., 1.]])>>> Yarray([[-3., -3., -3., -3.],[-2., -2., -2., -2.],[-1., -1., -1., -1.],[ 0., 0., 0., 0.],[ 1., 1., 1., 1.],[ 2., 2., 2., 2.]])>>> X.shape(6, 4)>>> Y.shape(6, 4)>>> f(X,Y)array([[ 4.79189834e-04, 1.10321829e-02, 3.01119922e-02,1.11229828e-02],[ 3.35462628e-04, 2.15614304e-01, 6.04416083e-01,2.29090198e-01],[-2.02138410e-01, 1.35335283e-01, 7.35758882e-01,4.06005850e-01],[-5.67784806e-01, 0.00000000e+00, 1.00000000e+00,7.35758882e-01],[-2.15614304e-01, -1.35335283e-01, 0.00000000e+00,1.35335283e-01],[-2.11341456e-02, -2.15614304e-01, -5.67784806e-01,-2.02138410e-01]])>>> t=f(X,Y)>>> t.shape(6, 4)
以上这篇python 连续不等式语法糖实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持好吧啦网。
相关文章: