python实现计算倒数的方法
本文实例讲述了python实现计算倒数的方法。分享给大家供大家参考。具体如下:
class Expr: def __add__(self, other): return Plus(self, other) def __mul__(self, other): return Times(self, other) class Int(Expr): def __init__(self, n): self.n = n def d(self, v): return Int(0) def __str__(self): return `self.n` class Var(Expr): def __init__(self, var): self.var = var def d(self, v): return Int(self.var == v and 1 or 0) def __str__(self): return self.var class Plus(Expr): def __init__(self, a, b): self.e1 = a self.e2 = b def d(self, v): return Plus(self.e1.d(v), self.e2.d(v)) def __str__(self): return "(%s + %s)" % (self.e1, self.e2) class Times(Expr): def __init__(self, a, b): self.e1 = a self.e2 = b def d(self, v): return Plus(Times(self.e1, self.e2.d(v)), Times(self.e1.d(v), self.e2)) def __str__(self): return "(%s * %s)" % (self.e1, self.e2) if __name__ == "__main__": x = Var("x") a = Var("a") b = Var("b") c = Var("c") e = a * x * x + b * x + c print "d(%s, x) = %s" % (e, e.d("x"))
希望本文所述对大家的Python程序设计有所帮助。
相关推荐
-
python计算圆周率pi的方法
本文实例讲述了python计算圆周率pi的方法.分享给大家供大家参考.具体如下: from sys import stdout scale = 10000 maxarr = 2800 arrinit = 2000 carry = 0 arr = [arrinit] * (maxarr + 1) for i in xrange(maxarr, 1, -14): total = 0 for j in xrange(i, 0, -1): total = (total * j) + (scale * a
-
python计算一个序列的平均值的方法
本文实例讲述了python计算一个序列的平均值的方法.分享给大家供大家参考.具体如下: def average(seq, total=0.0): num = 0 for item in seq: total += item num += 1 return total / num 如果序列是数组或者元祖可以简单使用下面的代码 def average(seq): return float(sum(seq)) / len(seq) 希望本文所述对大家的Python程序设计有所帮助.
-
Python使用gensim计算文档相似性
pre_file.py #-*-coding:utf-8-*- import MySQLdb import MySQLdb as mdb import os,sys,string import jieba import codecs reload(sys) sys.setdefaultencoding('utf-8') #连接数据库 try: conn=mdb.connect(host='127.0.0.1',user='root',passwd='kongjunli',db='test1',c
-
Python计算一个文件里字数的方法
本文实例讲述了Python计算一个文件里字数的方法.分享给大家供大家参考.具体如下: 这段程序从所给文件中找出字数来. from string import * def countWords(s): words=split(s) return len(words) #returns the number of words filename=open("welcome.txt",'r') #open an file in reading mode total_words=0 for li
-
详解Python编程中基本的数学计算使用
数 在 Python 中,对数的规定比较简单,基本在小学数学水平即可理解. 那么,做为零基础学习这,也就从计算小学数学题目开始吧.因为从这里开始,数学的基础知识列位肯定过关了. >>> 3 3 >>> 3333333333333333333333333333333333333333 3333333333333333333333333333333333333333L >>> 3.222222 3.222222 上面显示的是在交互模式下,如果输入 3,就显
-
python利用datetime模块计算时间差
今天写了点东西,要计算时间差,我记得去年写过,于是今天再次mark一下,以免自己忘记 In [27]: from datetime import datetime In [28]: a=datetime.now() In [29]: b=datetime.now() In [32]: a Out[32]: datetime.datetime(2015, 4, 7, 4, 30, 3, 628556) In [33]: b Out[33]: datetime.datetime(2015, 4, 7
-
基于python的Tkinter实现一个简易计算器
本文实例介绍了基于python的Tkinter实现简易计算器的详细代码,分享给大家供大家参考,具体内容如下 第一种:使用python 的 Tkinter实现一个简易计算器 #coding:utf-8 from Tkinter import * import time root = Tk() def cacl(input_str): if "x" in input_str: ret = input_str.split("x") return int(ret[0]) *
-
Python实现计算最小编辑距离
最小编辑距离或莱文斯坦距离(Levenshtein),指由字符串A转化为字符串B的最小编辑次数.允许的编辑操作有:删除,插入,替换.具体内容可参见:维基百科-莱文斯坦距离.一般代码实现的方式都是通过动态规划算法,找出从A转化为B的每一步的最小步骤.从Google图片借来的图, Python代码实现, (其中要注意矩阵的下标从1开始,而字符串的下标从0开始): def normal_leven(str1, str2): len_str1 = len(str1) + 1 len_str2 = len
-
python分割和拼接字符串
关于string的split 和 join 方法对导入os模块进行os.path.splie()/os.path.join() 貌似是处理机制不一样,但是功能上一样. 1.string.split(str=' ',num=string.count(str)): 以str为分隔,符切片string,如果num有指定值,则仅分隔num个子字符串.S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一组使用分隔符(sep)分割字符串形成的列表.如果指定最大分割数,则在
-
Python 字符串操作方法大全
1.去空格及特殊符号 复制代码 代码如下: s.strip().lstrip().rstrip(',') 2.复制字符串 复制代码 代码如下: #strcpy(sStr1,sStr2)sStr1 = 'strcpy'sStr2 = sStr1sStr1 = 'strcpy2'print sStr2 3.连接字符串 复制代码 代码如下: #strcat(sStr1,sStr2)sStr1 = 'strcat'sStr2 = 'append'sStr1 += sStr2print sStr1 4.查
-
Python计算字符宽度的方法
本文实例讲述了Python计算字符宽度的方法.分享给大家供大家参考,具体如下: 最近在用python写一个CLI小程序,其中涉及到计算字符宽度,目标是以友好的方式将一个长字符串截取为等宽的片段. 对于unicode字符,python的len函数可以准确的计算其中所包含的字符个数,但是个数并不代表宽度,如: >>>len(u'你好a') 3 因此无法简单的使用这种方式来计算宽度. GBK decode 首先我想到GBK编码,00–7F范围内的字符是一字节编码,其余是双字节编码,正好与字符的
-
Python 匹配任意字符(包括换行符)的正则表达式写法
想使用正则表达式来获取一段文本中的任意字符,写出如下匹配规则: (.*) 结果运行之后才发现,无法获得换行之后的文本.于是查了一下手册,才发现正则表达式中,"."(点符号)匹配的是除了换行符"\n"以外的所有字符. 以下为正确的正则表达式匹配规则: ([\s\S]*) 同时,也可以用 "([\d\D]*)"."([\w\W]*)" 来表示. Web技术之家_www.waweb.cn 在文本文件里, 这个表达式可以匹配所有的英文
-
Python字符转换
如:>>> print ord('a') 97 >>> print chr(97) a 下面我们可以开始来设计我们的大小写转换的程序了: 复制代码 代码如下: #!/usr/bin/env python #coding=utf-8 def UCaseChar(ch): if ord(ch) in range(97, 122): return chr(ord(ch) - 32) return ch def LCaseChar(ch): if ord(ch) in rang
随机推荐
- VBA将excel数据表生成JSON文件
- AngularJS学习第二篇 AngularJS依赖注入
- 使用正则表达式进行xml数据验证
- 对ListBox的添加移除操作实例分享
- asp.net core MVC 全局过滤器之ExceptionFilter过滤器(1)
- ASP.NET中DropDownList下拉框列表控件绑定数据的4种方法
- ThinkPHP的常用配置选项汇总
- 把大数据数字口语化(python与js)两种实现
- 解决 firefox 不支持 document.all的方法
- Docker Machine创建Azure虚拟主机
- CSS网页布局入门教程5:二列宽度自适应
- 保存远程图片函数修改正版
- SQL分页查询方式汇总
- 如何写一个通用的JavaScript效果库!(2/2)
- js+css使文本框自动适应内容的高度
- C#索引器简单实例代码
- PHP学习之PHP运算符
- 深入C++中struct与class的区别分析
- Vue响应式原理深入解析及注意事项
- JS实现的合并多个数组去重算法示例