<div>The docs describe identifiers to have this grammar:</div><div><pre style="overflow-x:auto;overflow-y:hidden;padding:5px;background-color:rgb(238,255,204);color:rgb(51,51,51);line-height:14px;border:1px solid rgb(170,204,153);font-family:monospace,sans-serif;font-size:12px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">
<strong id="grammar-token-identifier">identifier </strong> ::= <a class="reference internal" href="http://docs.python.org/py3k/reference/lexical_analysis.html#grammar-token-xid_start" style="color:rgb(48,48,111);text-decoration:none"><tt class="xref docutils literal" style="background-color:transparent;padding:0px 1px;font-size:11px;font-family:monospace,sans-serif;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><span class="pre">xid_start</span></tt></a> <a class="reference internal" href="http://docs.python.org/py3k/reference/lexical_analysis.html#grammar-token-xid_continue" style="color:rgb(48,48,111);text-decoration:none"><tt class="xref docutils literal" style="background-color:transparent;padding:0px 1px;font-size:11px;font-family:monospace,sans-serif;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><span class="pre">xid_continue</span></tt></a>*
<strong id="grammar-token-id_start">id_start </strong> ::= <all characters in general categories Lu, Ll, Lt, Lm, Lo, Nl, the underscore, and characters with the Other_ID_Start property>
<strong id="grammar-token-id_continue">id_continue </strong> ::= <all characters in <a class="reference internal" href="http://docs.python.org/py3k/reference/lexical_analysis.html#grammar-token-id_start" style="color:rgb(48,48,111);text-decoration:none"><tt class="xref docutils literal" style="background-color:transparent;padding:0px 1px;font-size:11px;font-family:monospace,sans-serif;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><span class="pre">id_start</span></tt></a>, plus characters in the categories Mn, Mc, Nd, Pc and others with the Other_ID_Continue property>
<strong id="grammar-token-xid_start">xid_start </strong> ::= <all characters in <a class="reference internal" href="http://docs.python.org/py3k/reference/lexical_analysis.html#grammar-token-id_start" style="color:rgb(48,48,111);text-decoration:none"><tt class="xref docutils literal" style="background-color:transparent;padding:0px 1px;font-size:11px;font-family:monospace,sans-serif;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><span class="pre">id_start</span></tt></a> whose NFKC normalization is in "id_start xid_continue*">
<strong id="grammar-token-xid_continue">xid_continue</strong> ::= <all characters in <a class="reference internal" href="http://docs.python.org/py3k/reference/lexical_analysis.html#grammar-token-id_continue" style="color:rgb(48,48,111);text-decoration:none"><tt class="xref docutils literal" style="background-color:transparent;padding:0px 1px;font-size:11px;font-family:monospace,sans-serif;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><span class="pre">id_continue</span></tt></a> whose NFKC normalization is in "id_continue*"></pre>
</div><div>So I would assume that</div><div><font face="courier new, monospace"> exec("a{} = None".format(char))</font></div><div>would be valid if</div><div><font face="courier new, monospace"> unicodedata.normalize("NFKC", char) == "1"</font></div>
<div>as</div><div><font face="courier new, monospace"> exec("a1 = None")</font></div><div>is valid.</div><div><br></div><div>BUT "aš = None" is not valid*.</div><div><br></div><div>*a<superscript 1>, accessible through <ALT-GR>+1 if your keyboard's set up to do that stuff.</div>
<div><br></div><div>Thank you for your times.</div>