python怎麼求乙個函式的最值

時間 2021-05-11 13:14:14

1樓:意群

我來舉個窮舉法的例子。

# 函式的功能為 x**2

def multi(x):

y = x**2

return y

# step 為嘗試的步進值

def find(func, min_, max_, step=0.01):

i = min_

while min_

執行結果如下:

i1 func(i)=1

i0.99 func(i)=0.9801

i0.98 func(i)=0.9603999999999999

i0.97 func(i)=0.9409

i0.96 func(i)=0.9216

i0.95 func(i)=0.9025

i0.94 func(i)=0.8835999999999999

i=-0.9299999999999999 func(i)=0.8648999999999999

i=-0.9199999999999999 func(i)=0.8463999999999998

i=-0.9099999999999999 func(i)=0.8280999999999998

i=-0.8999999999999999 func(i)=0.8099999999999998

i=-0.8899999999999999 func(i)=0.7920999999999998

i=-0.8799999999999999 func(i)=0.7743999999999999

i=-0.8699999999999999 func(i)=0.7568999999999998

i=-0.8599999999999999 func(i)=0.7395999999999998

i=-0.8499999999999999 func(i)=0.7224999999999998

i=-0.8399999999999999 func(i)=0.7055999999999998

i=-0.8299999999999998 func(i)=0.6888999999999997

i=-0.8199999999999998 func(i)=0.6723999999999998

i=-0.8099999999999998 func(i)=0.6560999999999997

i=-0.7999999999999998 func(i)=0.6399999999999997

i=-0.7899999999999998 func(i)=0.6240999999999997

i=-0.7799999999999998 func(i)=0.6083999999999997

i=-0.7699999999999998 func(i)=0.5928999999999996

i=-0.7599999999999998 func(i)=0.5775999999999997

i=-0.7499999999999998 func(i)=0.5624999999999997

i=-0.7399999999999998 func(i)=0.5475999999999996

i=-0.7299999999999998 func(i)=0.5328999999999996

i=-0.7199999999999998 func(i)=0.5183999999999996

i=-0.7099999999999997 func(i)=0.5040999999999997

i=-0.6999999999999997 func(i)=0.4899999999999996

i=-0.6899999999999997 func(i)=0.47609999999999963

i=-0.6799999999999997 func(i)=0.4623999999999996

i=-0.6699999999999997 func(i)=0.44889999999999963

i=-0.6599999999999997 func(i)=0.4355999999999996

i=-0.6499999999999997 func(i)=0.4224999999999996

i=-0.6399999999999997 func(i)=0.4095999999999996

i=-0.6299999999999997 func(i)=0.3968999999999996

i=-0.6199999999999997 func(i)=0.3843999999999996

i=-0.6099999999999997 func(i)=0.3720999999999996

i=-0.5999999999999996 func(i)=0.3599999999999996

i=-0.5899999999999996 func(i)=0.3480999999999996

i=-0.5799999999999996 func(i)=0.3363999999999996

i=-0.5699999999999996 func(i)=0.3248999999999996

i=-0.5599999999999996 func(i)=0.31359999999999955

i=-0.5499999999999996 func(i)=0.30249999999999955

i=-0.5399999999999996 func(i)=0.2915999999999996

i=-0.5299999999999996 func(i)=0.28089999999999954

i=-0.5199999999999996 func(i)=0.27039999999999953

i=-0.5099999999999996 func(i)=0.26009999999999955

i=-0.49999999999999956 func(i)=0.24999999999999956

i=-0.48999999999999955 func(i)=0.24009999999999956

i=-0.47999999999999954 func(i)=0.23039999999999955

i=-0.46999999999999953 func(i)=0.22089999999999957

i=-0.4599999999999995 func(i)=0.21159999999999957

i=-0.4499999999999995 func(i)=0.20249999999999957

i=-0.4399999999999995 func(i)=0.19359999999999955

i=-0.4299999999999995 func(i)=0.18489999999999956

i=-0.4199999999999995 func(i)=0.17639999999999956

i=-0.4099999999999995 func(i)=0.16809999999999958

i=-0.39999999999999947 func(i)=0.1599999999999996

i=-0.38999999999999946 func(i)=0.15209999999999957

i=-0.37999999999999945 func(i)=0.14439999999999958

i=-0.36999999999999944 func(i)=0.13689999999999958

i=-0.35999999999999943 func(i)=0.1295999999999996

i=-0.3499999999999994 func(i)=0.1224999999999996

i=-0.3399999999999994 func(i)=0.1155999999999996

i=-0.3299999999999994 func(i)=0.10889999999999961

i=-0.3199999999999994 func(i)=0.10239999999999962

i=-0.3099999999999994 func(i)=0.09609999999999962

i=-0.2999999999999994 func(i)=0.08999999999999962

i=-0.28999999999999937 func(i)=0.08409999999999963

i=-0.27999999999999936 func(i)=0.07839999999999964

i=-0.26999999999999935 func(i)=0.07289999999999965

i=-0.25999999999999934 func(i)=0.06759999999999966

i=-0.24999999999999933 func(i)=0.06249999999999967

i=-0.23999999999999932 func(i)=0.05759999999999968

i=-0.22999999999999932 func(i)=0.05289999999999968

i=-0.2199999999999993 func(i)=0.04839999999999969

i=-0.2099999999999993 func(i)=0.0440999999999997

i=-0.1999999999999993 func(i)=0.039999999999999716

i=-0.18999999999999928 func(i)=0.03609999999999973

i=-0.17999999999999927 func(i)=0.032399999999999735

i=-0.16999999999999926 func(i)=0.02889999999999975

i=-0.15999999999999925 func(i)=0.025599999999999762

i=-0.14999999999999925 func(i)=0.022499999999999774

i=-0.13999999999999924 func(i)=0.019599999999999788

i=-0.12999999999999923 func(i)=0.0168999999999998

i=-0.11999999999999923 func(i)=0.014399999999999816

i=-0.10999999999999924 func(i)=0.012099999999999831

i=-0.09999999999999924 func(i)=0.00999999999999985

i=-0.08999999999999925 func(i)=0.008099999999999864

i=-0.07999999999999925 func(i)=0.006399999999999881

i=-0.06999999999999926 func(i)=0.004899999999999896

i=-0.059999999999999255 func(i)=0.0035999999999999106

i=-0.04999999999999925 func(i)=0.0024999999999999255

i=-0.03999999999999925 func(i)=0.00159999999999994

i=-0.02999999999999925 func(i)=0.000899999999999955

i=-0.019999999999999248 func(i)=0.0003999999999999699

i=-0.009999999999999247 func(i)=9.999999999998495e-05

i=7.528699885739343e-16 func(i)=5.668132196953159e-31

i=0.010000000000000753 func(i)=0.00010000000000001506

i=0.020000000000000753 func(i)=0.0004000000000000301

i=0.030000000000000755 func(i)=0.0009000000000000453

i=0.04000000000000076 func(i)=0.0016000000000000606

i=0.05000000000000076 func(i)=0.002500000000000076

i=0.06000000000000076 func(i)=0.0036000000000000914

i=0.07000000000000076 func(i)=0.004900000000000106

i=0.08000000000000075 func(i)=0.00640000000000012

i=0.09000000000000075 func(i)=0.008100000000000135

i=0.10000000000000074 func(i)=0.010000000000000148

i=0.11000000000000074 func(i)=0.012100000000000163

i=0.12000000000000073 func(i)=0.014400000000000175

i=0.13000000000000073 func(i)=0.01690000000000019

i=0.14000000000000073 func(i)=0.019600000000000204

i=0.15000000000000074 func(i)=0.022500000000000225

i=0.16000000000000075 func(i)=0.02560000000000024

i=0.17000000000000076 func(i)=0.02890000000000026

i=0.18000000000000077 func(i)=0.032400000000000276

i=0.19000000000000078 func(i)=0.0361000000000003

i=0.2000000000000008 func(i)=0.04000000000000031

i=0.2100000000000008 func(i)=0.04410000000000033

i=0.2200000000000008 func(i)=0.04840000000000035

i=0.23000000000000081 func(i)=0.05290000000000038

i=0.24000000000000082 func(i)=0.057600000000000394

i=0.25000000000000083 func(i)=0.06250000000000042

i=0.26000000000000084 func(i)=0.06760000000000044

i=0.27000000000000085 func(i)=0.07290000000000046

i=0.28000000000000086 func(i)=0.07840000000000048

i=0.29000000000000087 func(i)=0.08410000000000051

i=0.3000000000000009 func(i)=0.09000000000000052

i=0.3100000000000009 func(i)=0.09610000000000055

i=0.3200000000000009 func(i)=0.10240000000000057

i=0.3300000000000009 func(i)=0.1089000000000006

i=0.3400000000000009 func(i)=0.11560000000000062

i=0.3500000000000009 func(i)=0.12250000000000065

i=0.36000000000000093 func(i)=0.12960000000000066

i=0.37000000000000094 func(i)=0.1369000000000007

i=0.38000000000000095 func(i)=0.14440000000000072

i=0.39000000000000096 func(i)=0.15210000000000073

i=0.40000000000000097 func(i)=0.16000000000000078

i= 0.410000000000001 func(i)=0.1681000000000008

i= 0.420000000000001 func(i)=0.17640000000000083

i= 0.430000000000001 func(i)=0.18490000000000084

i= 0.440000000000001 func(i)=0.19360000000000088

i= 0.450000000000001 func(i)=0.2025000000000009

i= 0.460000000000001 func(i)=0.21160000000000093

i=0.47000000000000103 func(i)=0.22090000000000096

i=0.48000000000000104 func(i)=0.230400000000001

i=0.49000000000000105 func(i)=0.24010000000000103

i= 0.500000000000001 func(i)=0.250000000000001

i= 0.510000000000001 func(i)=0.26010000000000105

i= 0.520000000000001 func(i)=0.2704000000000011

i= 0.530000000000001 func(i)=0.2809000000000011

i= 0.540000000000001 func(i)=0.29160000000000114

i= 0.550000000000001 func(i)=0.30250000000000116

i= 0.560000000000001 func(i)=0.31360000000000116

i=0.5700000000000011 func(i)=0.3249000000000012

i=0.5800000000000011 func(i)=0.33640000000000125

i=0.5900000000000011 func(i)=0.3481000000000013

i=0.6000000000000011 func(i)=0.3600000000000013

i=0.6100000000000011 func(i)=0.3721000000000013

i=0.6200000000000011 func(i)=0.38440000000000135

i=0.6300000000000011 func(i)=0.3969000000000014

i=0.6400000000000011 func(i)=0.40960000000000146

i=0.6500000000000011 func(i)=0.4225000000000015

i=0.6600000000000011 func(i)=0.4356000000000015

i=0.6700000000000012 func(i)=0.4489000000000015

i=0.6800000000000012 func(i)=0.4624000000000016

i=0.6900000000000012 func(i)=0.47610000000000163

i=0.7000000000000012 func(i)=0.49000000000000166

i=0.7100000000000012 func(i)=0.5041000000000017

i=0.7200000000000012 func(i)=0.5184000000000017

i=0.7300000000000012 func(i)=0.5329000000000017

i=0.7400000000000012 func(i)=0.5476000000000018

i=0.7500000000000012 func(i)=0.5625000000000019

i=0.7600000000000012 func(i)=0.5776000000000019

i=0.7700000000000012 func(i)=0.5929000000000019

i=0.7800000000000012 func(i)=0.6084000000000019

i=0.7900000000000013 func(i)=0.624100000000002

i=0.8000000000000013 func(i)=0.640000000000002

i=0.8100000000000013 func(i)=0.656100000000002

i=0.8200000000000013 func(i)=0.6724000000000021

i=0.8300000000000013 func(i)=0.6889000000000022

i=0.8400000000000013 func(i)=0.7056000000000022

i=0.8500000000000013 func(i)=0.7225000000000023

i=0.8600000000000013 func(i)=0.7396000000000023

i=0.8700000000000013 func(i)=0.7569000000000023

i=0.8800000000000013 func(i)=0.7744000000000023

i=0.8900000000000013 func(i)=0.7921000000000024

i=0.9000000000000014 func(i)=0.8100000000000024

i=0.9100000000000014 func(i)=0.8281000000000025

i=0.9200000000000014 func(i)=0.8464000000000025

i=0.9300000000000014 func(i)=0.8649000000000026

i=0.9400000000000014 func(i)=0.8836000000000026

i=0.9500000000000014 func(i)=0.9025000000000026

i=0.9600000000000014 func(i)=0.9216000000000028

i=0.9700000000000014 func(i)=0.9409000000000027

i=0.9800000000000014 func(i)=0.9604000000000028

i=0.9900000000000014 func(i)=0.9801000000000029

i=1.0000000000000013 func(i)=1.0000000000000027

i=1.0100000000000013 func(i)=1.0201000000000027

i=1.0200000000000014 func(i)=1.0404000000000027

i=1.0300000000000014 func(i)=1.0609000000000028

i=1.0400000000000014 func(i)=1.0816000000000028

i=1.0500000000000014 func(i)=1.102500000000003

i=1.0600000000000014 func(i)=1.123600000000003

i=1.0700000000000014 func(i)=1.144900000000003

i=1.0800000000000014 func(i)=1.166400000000003

i=1.0900000000000014 func(i)=1.188100000000003

i=1.1000000000000014 func(i)=1.210000000000003

i=1.1100000000000014 func(i)=1.232100000000003

i=1.1200000000000014 func(i)=1.2544000000000033

i=1.1300000000000014 func(i)=1.2769000000000033

i=1.1400000000000015 func(i)=1.2996000000000034

i=1.1500000000000015 func(i)=1.3225000000000033

i=1.1600000000000015 func(i)=1.3456000000000035

i=1.1700000000000015 func(i)=1.3689000000000036

i=1.1800000000000015 func(i)=1.3924000000000034

i=1.1900000000000015 func(i)=1.4161000000000035

i=1.2000000000000015 func(i)=1.4400000000000037

i=1.2100000000000015 func(i)=1.4641000000000037

i=1.2200000000000015 func(i)=1.4884000000000037

i=1.2300000000000015 func(i)=1.5129000000000037

i=1.2400000000000015 func(i)=1.5376000000000039

i=1.2500000000000016 func(i)=1.5625000000000038

i=1.2600000000000016 func(i)=1.587600000000004

i=1.2700000000000016 func(i)=1.612900000000004

i=1.2800000000000016 func(i)=1.638400000000004

i=1.2900000000000016 func(i)=1.6641000000000041

i=1.3000000000000016 func(i)=1.6900000000000042

i=1.3100000000000016 func(i)=1.7161000000000042

i=1.3200000000000016 func(i)=1.7424000000000042

i=1.3300000000000016 func(i)=1.7689000000000044

i=1.3400000000000016 func(i)=1.7956000000000043

i=1.3500000000000016 func(i)=1.8225000000000044

i=1.3600000000000017 func(i)=1.8496000000000046

i=1.3700000000000017 func(i)=1.8769000000000045

i=1.3800000000000017 func(i)=1.9044000000000045

i=1.3900000000000017 func(i)=1.9321000000000046

i=1.4000000000000017 func(i)=1.9600000000000046

i=1.4100000000000017 func(i)=1.9881000000000049

有的python內建函式怎麼就乙個pass

劉志軍 當你寫乙個函式或者在類裡面寫方法時,如果你暫時還沒想好怎麼實現,可以暫時用乙個pass來代替 class Person def eat self pass defcry self print I m crying 如果你什麼都不寫的話,就會報錯 IndentationError expect...

python初學,怎麼看乙個函式有沒有返回值?

你可以用dis模組檢視函式的位元組碼 deff a 1 defg return 1import disdis dis f LOAD CONST 1 1 STORE FAST 0 a LOAD CONST 0 None RETURN VALUE dis.dis g LOAD CONST 1 1 RET...

python 乙個類的函式如何呼叫另乙個類中函式的返回值?

我覺得大概有這麼幾種辦法。最簡單的一種是給subFrame的建構函式新增乙個引數 class subframe wx Frame def init self parent self parent parent class mainframe wx Frame def open subframe se...