Hướng dẫn fuzzywuzzy python - trăn mờ

Hướng dẫn fuzzywuzzy python - trăn mờ

Chuỗi mờ phù hợp như một ông chủ. Nó sử dụng khoảng cách Levenshtein để tính toán sự khác biệt giữa các chuỗi trong gói đơn giản.

Yêu cầu

  • Python 2.7 trở lên

  • Difflib

  • Python-Levenshtein (Tùy chọn, cung cấp tốc độ 4-10x trong khớp chuỗi, mặc dù có thể dẫn đến kết quả khác nhau đối với một số trường hợp nhất định)

Để thử nghiệm

  • pycodestyle

  • Giả thuyết

  • pytest

Cài đặt

Sử dụng PIP thông qua Pypi

pip install fuzzywuzzy

hoặc sau đây để cài đặt Python-Levenshtein quá

pip install fuzzywuzzy[speedup]

Sử dụng pip thông qua github

pip install git+git://github.com/seatgeek/#egg=fuzzywuzzy

Thêm vào tệp yêu cầu của bạn.txt (chạy pip install -r aborments.txt sau đó)requirements.txt file (run pip install -r requirements.txt afterwards)

git+ssh:///seatgeek/#egg=fuzzywuzzy

Theo cách thủ công thông qua git

git clone git://github.com/seatgeek/fuzzywuzzy.git fuzzywuzzy
cd fuzzywuzzy
python setup.py install

Cách sử dụng

>>> from fuzzywuzzy import fuzz
>>> from fuzzywuzzy import process

Tỷ lệ đơn giản

>>> fuzz.ratio("this is a test", "this is a test!")
    97

Tỷ lệ một phần

>>> fuzz.partial_ratio("this is a test", "this is a test!")
    100

Tỷ lệ sắp xếp mã thông báo

>>> fuzz.ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear")
    91
>>> fuzz.token_sort_ratio("fuzzy wuzzy was a bear", "wuzzy fuzzy was a bear")
    100

Tỷ lệ đặt mã thông báo

>>> fuzz.token_sort_ratio("fuzzy was a bear", "fuzzy fuzzy was a bear")
    84
>>> fuzz.token_set_ratio("fuzzy was a bear", "fuzzy fuzzy was a bear")
    100

Quá trình

pip install fuzzywuzzy[speedup]
0

Bạn cũng có thể vượt qua các tham số bổ sung cho phương thức ExtractOne để làm cho nó sử dụng một người ghi bàn cụ thể. Một trường hợp sử dụng điển hình là để khớp với các đường dẫn tệp:extractOne method to make it use a specific scorer. A typical use case is to match file paths:

pip install fuzzywuzzy[speedup]
1

Các cổng được biết đến

Fuzzywuzzy cũng đang được chuyển sang các ngôn ngữ khác! Dưới đây là một vài cổng chúng tôi biết:

  • Java: Xpresso từ Fuzzywuzzy triển khai

  • Java: Fuzzywuzzy (cổng Java)

  • Rust: Fuzzyrusty (Cổng rỉ sét)

  • JavaScript: fuzzball.js (cổng javascript)

  • C ++: Tmplt/fuzzywuzzy

  • C#: fuzzysharp (cổng .NET)

  • GO: Go-fuzzywuzz (Go Port)

  • Pascal miễn phí: fuzzywuzzy.pas (cổng pascal miễn phí)

  • Kotlin Multiplatform: Fuzzywuzzy-Kotlin

  • R: FuzzyWuzzyr ​​(cổng R)