平方数の判定を、sympyの素因数分解factorintでできますか？


目的は、平方数の判定を一行でできますか?よろしくお願いします。

print(factorint(9))  
{3: 2}  
print(factorint(81))  
{3: 4}

参考nが平方数かどうか調べる時  
<https://teratail.com/questions/200122>

参考:Wolfram|Alpha  
81は平方数ですか  
<https://ja.wolframalpha.com/input/?i=81%E3%81%AF%E5%B9%B3%E6%96%B9%E6%95%B0%E3%81%A7%E3%81%99%E3%81%8B>

80は平方数ですか  
<https://ja.wolframalpha.com/input/?i=80%E3%81%AF%E5%B9%B3%E6%96%B9%E6%95%B0%E3%81%A7%E3%81%99%E3%81%8B>




正の数 n に対して、n を素因数分解した結果すべての素因数の指数が偶数であることが n
が平方数であることの必要十分条件ですから、素因数分解できているのであれば指数がすべて偶数であるかどうかをチェックすれば良いです。




正の数 n に対して、n を素因数分解した結果すべての素因数の指数が偶数であることが n
が平方数であることの必要十分条件ですから、素因数分解できているのであれば指数がすべて偶数であるかどうかをチェックすれば良いです。

