Затрудняюсь с переводом кода с C++ на Python

#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
   string a,b,c,mi;
   int y = 0;
   cin >> a >> b >> c;
   vector <string> z;
   if (a.length() <= b.length() && a.length() <= c.length()){
       mi = a;
   }
   else if (b.length() <= a.length() && b.length() <= c.length()){
       mi = b;
   }
   else{
       mi = c;
   }
   for (int i = 1;i <= mi.length();i++){
       y = 0;
       for (int l = 0;l < mi.length() - i + 1;l++){
           string s;
           for (int j = 0;j < i;j++){
               s = s + mi[l + j];
           }
           if (a.find(s) != std::string::npos && b.find(s) != std::string::npos && c.find(s) != std::string::npos){
               z.push_back(s);
               y = 1;
               break;
           }
       }
       if (y == 0){
           break;
       }
   }
   cout << z[z.size() - 1];
   return 0;
}

Ответы (1 шт):

Автор решения: Недокодер
#std::string::npos 
# s должен виглядить так r"text"
if re.match(s, a):
    z.append(s)
    y = 1
    break
# vector <string> z; поидее так
z = []

Если что я С++ не совсем знаю, но Python хорошо.

→ Ссылка