New submission from Nabeel Alzahrani <nalza...@ucr.edu>:
The difflib.SequenceMatcher.ratio() gives 0.3 instead of 1.0 or at least 0.9 for the following two strings a and b: a=""" #include <iostream> #include <string> using namespace std; int main() { string userWord; unsigned int i; cin >> userWord; for(i = 0; i < userWord.size(); i++) { if(userWord.at(i) == 'i') { userWord.at(i) = '1'; } if(userWord.at(i) == 'a') { userWord.at(i) = '@'; } if(userWord.at(i) == 'm') { userWord.at(i) = 'M'; } if(userWord.at(i) == 'B') { userWord.at(i) = '8'; } if(userWord.at(i) == 's') { userWord.at(i) = '$'; } userWord.push_back('!'); } cout << userWord << endl; return 0; } """ b=""" #include <iostream> #include <string> using namespace std; int main() { string userWord; unsigned int i; cin >> userWord; userWord.push_back('!'); for(i = 0; i < userWord.size(); i++) { if(userWord.at(i) == 'i') { userWord.at(i) = '1'; } if(userWord.at(i) == 'a') { userWord.at(i) = '@'; } if(userWord.at(i) == 'm') { userWord.at(i) = 'M'; } if(userWord.at(i) == 'B') { userWord.at(i) = '8'; } if(userWord.at(i) == 's') { userWord.at(i) = '$'; } } cout << userWord << endl; return 0; } """ ---------- components: Library (Lib) messages: 401683 nosy: nalza001 priority: normal severity: normal status: open title: possible wrong result for difflib.SequenceMatcher.ratio() type: behavior versions: Python 3.10, Python 3.11, Python 3.6, Python 3.7, Python 3.8, Python 3.9 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue45180> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com