New submission from Nabeel Alzahrani <[email protected]>:
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 <[email protected]>
<https://bugs.python.org/issue45180>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com