Z13091: Difference between revisions

From Wikifunctions
Replace multiple conditional returns with a single final return
cater for retaining e after two consonants (when not softening c or g)
Line 14: Line 14:
"Z61K1": "python"
"Z61K1": "python"
},
},
"Z16K2": "def Z13087(Z13087K1):\n\timport re\n\tlemma = Z13087K1.lower()\n\tform = lemma + 'ing'\n\tif lemma.endswith('c') \\\n\t\t\tand re.search(r'[aeiou]c$', lemma):\n\t\tform = lemma + 'k' + 'ing'\n\tif re.search(r'[aeiou][bdfgkmnprstvz]$', lemma) \\\n\t\t\tand not re.search(r'[aeiou][aeiou][bdfgkmnprstvz]$', lemma):\n\t\tform = lemma + lemma[-1] + 'ing'\n\tif lemma.endswith('ie') :\n\t\tform = lemma[:-2] + 'ying'\n\tif lemma.endswith('e') \\\n\t\t\tand not re.search(r'[eioy]e$', lemma):\n\t\tform = lemma[:-1]+ 'ing'\n\treturn form"
"Z16K2": "def Z13087(Z13087K1):\n\timport re\n\tlemma = Z13087K1.lower()\n\tform = lemma + 'ing'\n\tif re.search(r'[aeiou]c$', lemma):\n\t\tform = lemma + 'k' + 'ing'\n\telif re.search(r'[aeiou][bdfgkmnprstvz]$', lemma) \\\n\t\t\tand not re.search(r'[aeiou][aeiou][bdfgkmnprstvz]$', lemma):\n\t\tform = lemma + lemma[-1] + 'ing'\n\telif lemma.endswith('ie') :\n\t\tform = lemma[:-2] + 'ying' # Very few exceptions like \"boogieing\"\n\telif lemma.endswith('e') \\\n\t\t\tand not re.search(r'[éeioy]e$', lemma) \\\n\t\t\tand not re.search(r'[cg][cg]e$', lemma) \\\n\t\t\tand not re.search(r'[bcdfghjklmnpqrstvwxz][bdfjkmnpqrstvwxz]e$', lemma):\n\t\tform = lemma[:-1]+ 'ing'\n\treturn form"
}
}
},
},
Line 37: Line 37:
"Z1K1": "Z12",
"Z1K1": "Z12",
"Z12K1": [
"Z12K1": [
"Z11"
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Double some final consonants, drop final e (generally), mutate final ie to y, and add -ing"
}
]
]
}
}

Revision as of 23:20, 16 February 2024

This page displays in a limited way without JavaScript.