Python は difflib モジュールを使用して 2 つの文字列間の違いを比較します

Python では、stringupper()メソッドを使用して小文字を大文字に変換できます。例は次のとおりです。

str1 = "hello, world"
str2 = str1.upper()
print(str2)  # 输出 "HELLO, WORLD"

このupper()メソッドは文字列内の小文字を大文字に変換するだけであり、元の文字列自体に大文字が含まれている場合は影響を受けません。文字列内のすべての文字を大文字に変換する場合は、str.upper()メソッドを使用できます。

Python の組み込み difflib モジュールを使用して、2 つの文字列間の違いを比較できます。サンプル コードは次のとおりです。

from difflib import ndiff

str1 = "Hello, world"
str2 = "Hi, world"

# 使用 ndiff 对比两个字符串的差异
diff = ndiff(str1, str2)

# 打印差异
for line in diff:
    if line.startswith("- "):
        print("Delete: {}".format(line[2:].strip()))
    elif line.startswith("+ "):
        print("Add: {}".format(line[2:].strip()))
    elif line.startswith("? "):
        print("Change: {}".format(line[2:].strip()))
    else:
        print("Same: {}".format(line.strip()))

上記のコードは次のように出力します。

Delete: H
Add: H i
Same: ,   w
Change: o => ,
Same: r
Same: l
Same: d

ご覧のとおり、違いには、削除された文字、追加された文字、および変更された文字が含まれます。

おすすめ

転載: blog.csdn.net/songpeiying/article/details/132709460