问 题

假设有一个点集[x0, x1, x2, ..., xn],对应的函数值为[y0, y1, y2, ..., yn],怎样求差商(1至n阶)。

k阶差商计算公式

f(x0, x1, ..., xk) = (f(x1, x2, ..., xk) - f(x0, x1, ... x(k-1))) / (xk - x0)

举个例子,一阶差商:

f(x0, x1) = (f(x1) - f(x0)) / (x1 - x0)

f(x1, x2) = (f(x2) - f(x1)) / (x2 - x1)

二阶差商:

f(x0, x1, x2) = (f(x1, x2) - f(x0, x1)) / (x2 - x1)

解决方案

大概是這樣:

fmap = {1:1, 2:2, 3:3}

def f(*x):

if len(x)==1:

rc = fmap[x[0]]

print('f({})={}'.format(x[0], rc))

return rc

rc = (f(*x[1:])-f(*x[:-1]))/(x[-1]-x[0])

template = 'f({})=(f({})-f({}))/({}-{})={}'

print(template.format(', '.join([str(i) for i in x]),

', '.join([str(i) for i in x[1:]]),

', '.join([str(i) for i in x[:-1]]),

x[-1], x[0],

rc))

return rc

f(1, 2, 3)

結果:

f(3)=3

f(2)=2

f(2, 3)=(f(3)-f(2))/(3-2)=1.0

f(2)=2

f(1)=1

f(1, 2)=(f(2)-f(1))/(2-1)=1.0

f(1, 2, 3)=(f(2, 3)-f(1, 2))/(3-1)=0.0

扫一扫关注IT屋

微信公众号搜索 “ IT屋 ” ,选择关注与百万开发者在一起

python怎么求商_如何用python求差商?相关推荐

  1. python求平均值_如何用python求平均值

    学习了Python相关数据类型,函数的知识后,利用字符串的分割实现了输入任意多个数据,并计算其平均值的小程序.思路是接收输入的字符串,以空格为分隔符,将分割的数据存入列表(lst1)中,将lst1中的 ...

  2. python 矩阵运算 for循环_如何用 Python 科学计算中的矩阵替代循环

    展开全部 因为在Mathematica中使用循环确实是低效的.32313133353236313431303231363533e78988e69d8331333361313961..... 深层次的原 ...

  3. python可视化迷宫求解_如何用 Python 制作一个迷宫游戏

    相信大家都玩过迷宫的游戏,对于简单的迷宫,我们可以一眼就看出通路,但是对于复杂的迷宫,可能要仔细寻找好久,甚至耗费数天,然后可能还要分别从入口和出口两头寻找才能找的到通路,甚至也可能找不到通路. 虽然 ...

  4. python搭建自动化测试平台_如何用python语言搭建自动化测试环境

    原标题:如何用python语言搭建自动化测试环境 技术分享:基于Python语言的Web自动化测试环境搭建 近期发现很多初学者在学习自动化的过程当中,在环境安装环节总是出现问题,所以详细的出一篇环境搭 ...

  5. 如何制作python检查小软件_如何用Python制作整蛊小程序

    原标题:如何用Python制作整蛊小程序 下面的整蛊程序,千万不要发代码,否则就实现不了你整蛊的目的了.完成后一定要打包成一个exe程序,再发给朋友使用 . 1. 使用 pip install pyi ...

  6. python rest api 测试_如何用Python编写REST API的单元测试

    在过去的几个月中,正在从事一个名为B的项目.它是带有简单Web UI的徽章生成器,用于添加数据并生成PDF可打印徽章.B后端现在已转移到REST-API并测试REST-API中使用的功能,我们需要一些 ...

  7. python的out模式_如何用python中的DataFrame列的模式替换NA值?

    我对Python(和本网站)完全陌生,目前正试图用它们的模式替换特定数据帧列中的NA值.我试过了各种不起作用的方法.请帮我看看我做错了什么:如何用python中的DataFrame列的模式替换NA值? ...

  8. 用python做一张图片_如何用python下载一张图片

    如何用python下载一张图片 这里要用到的主要工具是requests这个工具,需要先安装这个库才能使用,该库衍生自urllib这个库,但是要比它更好用.多数人在做爬虫的时候选择它,是个不错的选择. ...

  9. 用python处理excel表格_如何用python处理excel数据 | 用python处理excel表格数据类型

    python 读取EXCEL文件中的数据格式 扩展库 xlrd 读excle xlwt 写excle 直上搜就能下载 下载后使用 import xlrd 就可以读excle了 打开文件: xls = ...

最新文章

  1. android 图片压缩方法分析
  2. 剑指offer——面试题7:重建二叉树
  3. js 获取表格数据(表单变量值)
  4. DCMTK:函数dcmGenerateUniqueIdentifier的测试程序
  5. WEB可以调节的框架页
  6. 虚拟化服务器类型,虚拟化服务器类型
  7. Flink : Flink run yarn 报错 could not build the program from jar file -ynm
  8. PHP CURL实现远程下载文件到本地
  9. Flink 如何支持特征工程、在线学习、在线预测等 AI 场景?
  10. Linux RTC Test Example rtctest.c hacking
  11. 编码表概述和常见编码表
  12. Nano板使用USB与PX4通信
  13. 响铃:含着金钥匙的HomeKit如何才能大器晚成?
  14. linux查看redis链接数,查看redis连接数
  15. [C语言]实现字符串从头尾分别输出字符的动画效果
  16. 送给要健身或者准备健身的男朋友女朋友基友们 想让你们和我一样踏上条不归路
  17. 预装Win 8.1 Pro环境下安装Win 7双系统
  18. Git 入门教程,10000 字详解
  19. Toshiba TC358743XBG HDMI接口转IC
  20. hue介绍系列02_李孟_新浪博客

热门文章

  1. Azure 媒体服务可将优质内容传输至 Apple TV
  2. 【源码】MATLAB计算流体动力学(CFD)GUI工具箱
  3. 二叉树的深度怎么算(Java代码实现)
  4. CVE-2017-7494紧急预警:Samba蠕虫级提权漏洞,攻击代码已在网上扩散
  5. linux内核内存管理slub
  6. kmem_cache的创建和释放-slub分配器
  7. react native fect network request failed
  8. C# 模拟鼠标移动和点击(转载)
  9. 多元函数条件极值的求法 拉格朗日乘数法
  10. 分辨率,像素,dp之间的联系