你知道有哪些库可以帮助做到这一点吗?
我会编写一个函数,以统一的差异格式打印两个多行字符串之间的差异。类似于这样:
def print_differences(string1, string2):
"""
Prints the comparison of string1 to string2 as unified diff format.
"""
???
以下是一个用法示例:
string1="""
Usage: trash-empty [days]
Purge trashed files.
Options:
--version show program's version number and exit
-h, --help show this help message and exit
"""
string2="""
Usage: trash-empty [days]
Empty the trash can.
Options:
--version show program's version number and exit
-h, --help show this help message and exit
Report bugs to http://code.google.com/p/trash-cli/issues
"""
print_differences(string1, string2)
这应该打印出类似这样的东西:
--- string1
+++ string2
@@ -1,6 +1,6 @@
Usage: trash-empty [days]
-Purge trashed files.
+Empty the trash can.
Options:
--version show program's version number and exit
"hello\nthere" != "hello\nthere\n"
。使用expected = [line for line in expected.split('\n')]
可以解决这个问题。 - Marcel Wilson