今天来介绍如何通过difflib模块实现字符串差异对比。Difflib的作用是对比文本之间的差异,且支持输入可读性比较强的HTML文档。下面来看一下示例。

1、 两个字符串的差异对比,代码如下:

import difflib

text1 = ''' text1:

Differ is a class for comparing sequences of lines of text,and

producing human-readble differences or deltas.

add string

print version

''' #定义字串text1

text1_lines = text1.splitlines() # 以行分隔,以便进行对比

text2 = '''text2:

differ is a class for comparing sequences of lines of text,and

producing human-readable differences or deltas.

add string

print version

''' #定义字符串2

text2_lines = text2.splitlines() # 以行分隔,以便进行对比

d = difflib.Differ() #创建differ()对象

diff = d.compare(text1_lines,text2_lines) #采用compare 方法对字符串进行比较

print (''.join(list(diff))) #打印输出结果

输出结果如下图:

python中字符串之间的比较_如何利用python来对比两个字符串的差异相关推荐

  1. python中filepath路径怎么写_详解Python中的路径问题

    1. 绝对路径引入 Python 在搜索模块时,依次搜索sys.path里的位置,直到找到模块为止.下面命令可以查看当前的搜索路径: import sys print(sys.path) sys.pa ...

  2. python中sub是什么意思_相当于Python中R的sub和paste(字符串和数字的连接)

    以前,在R中,我使用sub和paste将字符串和数字连接在一起. 我发现Python有点难.下面是Python中的示例代码import pandas as pd from numpy.random i ...

  3. python中指定最后一个字符_如何从Python字符串中删除最后一个字符?

    如何从Python字符串中删除最后一个字符? Python支持负索引切片和正切片.负索引从  -1 到-(iterable_length)开始.我们将使用负切片从可迭代对象的末尾获取元素. 索引  - ...

  4. python中的date的含义_浅谈python中的dateime

    原文链接:http://www.cnblogs.com/lhj588/archive/2012/04/23/2466653.html Python提供了多个内置模块用于操作日期时间,像calendar ...

  5. python中var是什么变量_一、 Python概述、变量

    一.        Python概述 1.python是一门面向对象,解释型的脚本语言.语法简洁,编写效率高,但是执行(底层运行)效率低(总的来说解释语言执行效率低于编译语言). 注意:本博客所有的代 ...

  6. python中yaml模块的使用_详解Python yaml模块

    一.yaml文件介绍 yaml是一个专门用来写配置文件的语言. 1. yaml文件规则 区分大小写: 使用缩进表示层级关系: 使用空格键缩进,而非Tab键缩进 缩进的空格数目不固定,只需要相同层级的元 ...

  7. python中的符号下划线_详解Python中下划线的使用方法

    编程派微信号:codingpy 这篇文章讨论Python中下划线_的使用.跟Python中很多用法类似,下划线 _ 的不同用法绝大部分(不全是)都是一种惯例约定. 单个下划线(_) 主要有三种情况: ...

  8. python中换行的转义符_详解Python中的各种转义符\n\r\t

    Python中的各种转义符\n\r\t 转义符 描述 \ 续行符(在行尾时) \\ 反斜杠符号 ' 单引号 " 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 ...

  9. python中for循环的用法_浅谈Python的for循环

    for循环在python中的重要性毋庸置疑,可是,我们真的把所有for循环的知识点都理解透了么?试试看以下内容: for 循环的基本格式 for iterable是可迭代对象,包括字符串,列表,元组, ...

最新文章

  1. java设计模式---装饰器模式
  2. python web-python web入坑指南
  3. esp32 arduino adc_英雄联盟手游射手出装怎么出 adc英雄出装推荐
  4. python递归查找_Python程序使用递归查找数字的幂
  5. DeFi巨鲸0xb1向DeBank打赏5 ETH
  6. 阿里成立智能搜索业务部;任天堂:共有30万账号被黑客入侵;TiDB 3.1.2 发布| 极客头条...
  7. php 飞鹅云打印机_ThinkPHP飞鹅云打印接口
  8. Tomcat 6、7在EL表达式解析时存在的一个Bug
  9. Project 3 :Python爬虫源码实现抓取1000条西刺免费代理IP-HTTPS并保存读取
  10. java使用阿里邮箱发送邮件
  11. DNS原理及解析过程
  12. 使用点滴字幕在线生成字幕文件
  13. 软件测试基础理论全集
  14. windows 剪贴板监控
  15. ArcGIS之多个GDB批量导出shp至特定文件夹20201228
  16. Excel学习之旅(三)
  17. 《C语言入门》简单回文序列问题求解
  18. 开源的分布式文件系统GlusterFS(Gluster File System)
  19. 【LaTex】基础语法框架快速入门教程——Tex live+TexStudio简要安装及使用教程
  20. 我的世界Java超级指令_我的世界空气方块指令(附:删除大量方块攻略)

热门文章

  1. 电动汽车又“火了” 面对频繁自燃事故 蔚来不得不这样做...
  2. 张一鸣回忆7年创业历程:小民宅里诞生第一版推荐引擎
  3. 蒜黄香菇炒肉 【原创】
  4. C语言教程第六章:指针(1)
  5. 标识符怎么读_音标怎么学?到底该学英式还是美式
  6. git 使用分支基础
  7. 华中科技计算机基础第五次,华中科技大学c++第5次上机作业
  8. MFC小笔记:简单画图
  9. iptables学习笔记:端口转发之“外网访问内网”
  10. 遇到一个在linux下无法跨网段发送接收广播包的问题