「三角関数表(正弦tan) 0°〜180°」をsympyで計算しました。

・tan 15°...は、√の計算をします。
・私は、90°を超えるtan? を考えた事ありませんでした。180°を超える場合も。

# Doc
The tangent function.
Returns the tangent of x (measured in radians).
https://docs.sympy.org/latest/modules/functions/elementary.html#sympy.functions.elementary.trigonometric.tan

# sympyで(５°づつ。0°〜180°)
```python
from sympy import *
pitch=5
for i in range(Integer(180/pitch)+1):
    j=pitch*i
    jstr=str(j).rjust(3, ' ')+"°"
    myStr=str(      tan(j*pi/180).simplify() )
    if  j==90:
        myFlt='zoo'
    else:     
        myFlt=str(float(tan(j*pi/180)))
    if  'pi' in myStr: 
         print("#",jstr,15*" ",'{:<47}'.format(myStr)+myFlt)
    else:      
         print("#",jstr       ,'{:<63}'.format(myStr)+myFlt)

#   0° 0                                                              0.0
#   5°                 tan(pi/36)                                     0.08748866352592401
#  10°                 tan(pi/18)                                     0.17632698070846498
#  15° 2 - sqrt(3)                                                    0.2679491924311227
#  20°                 tan(pi/9)                                      0.36397023426620234
#  25°                 tan(5*pi/36)                                   0.4663076581549986
#  30° sqrt(3)/3                                                      0.5773502691896257
#  35°                 tan(7*pi/36)                                   0.7002075382097098
#  40°                 tan(2*pi/9)                                    0.83909963117728
#  45° 1                                                              1.0
#  50°                 tan(5*pi/18)                                   1.19175359259421
#  55°                 tan(11*pi/36)                                  1.4281480067421146
#  60° sqrt(3)                                                        1.7320508075688772
#  65°                 tan(13*pi/36)                                  2.1445069205095586
#  70°                 tan(7*pi/18)                                   2.747477419454622
#  75° sqrt(3) + 2                                                    3.732050807568877
#  80°                 tan(4*pi/9)                                    5.671281819617709
#  85°                 tan(17*pi/36)                                  11.430052302761343
#  90° zoo                                                            zoo
#  95°                 -(cos(pi/18) + 1)/sin(pi/18)                   -11.430052302761343
# 100°                 -tan(4*pi/9)                                   -5.671281819617709
# 105° -2 - sqrt(3)                                                   -3.732050807568877
# 110°                 -1/tan(pi/9)                                   -2.747477419454622
# 115°                 -1/cos(2*pi/9) - tan(2*pi/9)                   -2.1445069205095586
# 120° -sqrt(3)                                                       -1.7320508075688772
# 125°                 -1/cos(pi/9) - tan(pi/9)                       -1.4281480067421146
# 130°                 -1/cos(pi/18) - tan(pi/18)                     -1.19175359259421
# 135° -1                                                             -1.0
# 140°                 -tan(2*pi/9)                                   -0.83909963117728
# 145°                 -tan(7*pi/36)                                  -0.7002075382097098
# 150° -sqrt(3)/3                                                     -0.5773502691896257
# 155°                 -tan(5*pi/36)                                  -0.4663076581549986
# 160°                 -tan(pi/9)                                     -0.36397023426620234
# 165° -2 + sqrt(3)                                                   -0.2679491924311227
# 170°                 -tan(pi/18)                                    -0.17632698070846498
# 175°                 -tan(pi/36)                                    -0.08748866352592401
# 180° 0                                                              0.0
```


# sympyで(１°づつ。0°〜180°)
・√の出力の角度のみprint。
```python
from sympy import *
pitch=1
for i in range(Integer(180/pitch)+1):
    j=pitch*i    
    jstr=str(j).rjust(3, ' ')+"°"
    myStr=str(tan(j*pi/180) )
    if  j==90:
        print("#",jstr,'zoo')
    elif  'pi' not in myStr: 
        print("#",jstr,  tan(j*pi/180).simplify())

#   0° 0
#   3° (-sqrt(15) - sqrt(10 - 2*sqrt(5)) - sqrt(3) + 8)/(-sqrt(5) - 1 + sqrt(6)*sqrt(5 - sqrt(5)))
#   6° (-9 + sqrt(5) + sqrt(6*sqrt(5) + 30))/(-sqrt(2)*sqrt(sqrt(5) + 5) - sqrt(3) + sqrt(15))
#   9° -sqrt(5)*sqrt(2*sqrt(5) + 10)/4 - sqrt(2*sqrt(5) + 10)/4 + 1 + sqrt(5)
#  12° (-sqrt(1 - 2*sqrt(5)/5) + sqrt(3)/3)/(sqrt(3)*sqrt(1 - 2*sqrt(5)/5)/3 + 1)
#  15° 2 - sqrt(3)
#  18° sqrt(25 - 10*sqrt(5))/5
#  21° (-8 - sqrt(3) + sqrt(2*sqrt(5) + 10) + sqrt(15))/(-sqrt(6)*sqrt(sqrt(5) + 5) - 1 + sqrt(5))
#  24° (-sqrt(5 - 2*sqrt(5)) + sqrt(3))/(1 + sqrt(3)*sqrt(5 - 2*sqrt(5)))
#  27° -sqrt(5)*sqrt(10 - 2*sqrt(5))/4 - 1 + sqrt(10 - 2*sqrt(5))/4 + sqrt(5)
#  30° sqrt(3)/3
#  33° (-sqrt(15) - sqrt(3) + sqrt(10 - 2*sqrt(5)) + 8)/(1 + sqrt(5) + sqrt(6)*sqrt(5 - sqrt(5)))
#  36° sqrt(5 - 2*sqrt(5))
#  39° (-sqrt(2*sqrt(5) + 10) - sqrt(3) + sqrt(15) + 8)/(-1 + sqrt(5) + sqrt(6)*sqrt(sqrt(5) + 5))
#  42° (-sqrt(30 - 6*sqrt(5)) + sqrt(5) + 9)/(sqrt(3) + sqrt(2)*sqrt(5 - sqrt(5)) + sqrt(15))
#  45° 1
#  48° -(sqrt(3) + sqrt(2*sqrt(5) + 5))/(-sqrt(3)*sqrt(2*sqrt(5) + 5) + 1)
#  51° (-sqrt(15) + sqrt(3) + sqrt(2*sqrt(5) + 10) + 8)/(-1 + sqrt(5) + sqrt(6)*sqrt(sqrt(5) + 5))
#  54° sqrt(10*sqrt(5) + 25)/5
#  57° (-sqrt(10 - 2*sqrt(5)) + sqrt(3) + sqrt(15) + 8)/(1 + sqrt(5) + sqrt(6)*sqrt(5 - sqrt(5)))
#  60° sqrt(3)
#  63° -1 - sqrt(10 - 2*sqrt(5))/4 + sqrt(5)*sqrt(10 - 2*sqrt(5))/4 + sqrt(5)
#  66° (-sqrt(5) + sqrt(6*sqrt(5) + 30) + 9)/(-sqrt(3) + sqrt(2)*sqrt(sqrt(5) + 5) + sqrt(15))
#  69° (-8 - sqrt(15) - sqrt(2*sqrt(5) + 10) + sqrt(3))/(-sqrt(6)*sqrt(sqrt(5) + 5) - 1 + sqrt(5))
#  72° sqrt(2*sqrt(5) + 5)
#  75° sqrt(3) + 2
#  78° (sqrt(5) + sqrt(30 - 6*sqrt(5)) + 9)/(-sqrt(2)*sqrt(5 - sqrt(5)) + sqrt(3) + sqrt(15))
#  81° sqrt(2*sqrt(5) + 10)/4 + 1 + sqrt(5)*sqrt(2*sqrt(5) + 10)/4 + sqrt(5)
#  84° (sqrt(3)/3 + sqrt(2*sqrt(5)/5 + 1))/(-sqrt(3)*sqrt(2*sqrt(5)/5 + 1)/3 + 1)
#  87° (sqrt(3) + sqrt(10 - 2*sqrt(5)) + sqrt(15) + 8)/(-sqrt(5) - 1 + sqrt(6)*sqrt(5 - sqrt(5)))
#  90° zoo
#  93° (sqrt(10 - 2*sqrt(5)) + sqrt(3)*(1 + sqrt(5)) + 8)/(-sqrt(6)*sqrt(5 - sqrt(5)) + 1 + sqrt(5))
#  96° (sqrt(5 - 2*sqrt(5)) + sqrt(3))/(-sqrt(3)*sqrt(5 - 2*sqrt(5)) + 1)
#  99° -sqrt(5) - sqrt(5)*sqrt(2*sqrt(5) + 10)/4 - 1 - sqrt(2*sqrt(5) + 10)/4
# 102° (-9 - sqrt(30 - 6*sqrt(5)) - sqrt(5))/(-sqrt(2)*sqrt(5 - sqrt(5)) + sqrt(3) + sqrt(15))
# 105° -2 - sqrt(3)
# 108° -sqrt(2*sqrt(5) + 5)
# 111° (-sqrt(3) + sqrt(2*sqrt(5) + 10) + sqrt(15) + 8)/(-sqrt(6)*sqrt(sqrt(5) + 5) - 1 + sqrt(5))
# 114° (-9 - sqrt(6*sqrt(5) + 30) + sqrt(5))/(-sqrt(3) + sqrt(2)*sqrt(sqrt(5) + 5) + sqrt(15))
# 117° -sqrt(5) - sqrt(5)*sqrt(10 - 2*sqrt(5))/4 + sqrt(10 - 2*sqrt(5))/4 + 1
# 120° -sqrt(3)
# 123° (-8 - sqrt(15) - sqrt(3) + sqrt(10 - 2*sqrt(5)))/(1 + sqrt(5) + sqrt(6)*sqrt(5 - sqrt(5)))
# 126° -sqrt(10*sqrt(5) + 25)/5
# 129° (-8 - sqrt(2*sqrt(5) + 10) - sqrt(3) + sqrt(15))/(-1 + sqrt(5) + sqrt(6)*sqrt(sqrt(5) + 5))
# 132° -(sqrt(1 - 2*sqrt(5)/5) + sqrt(3)/3)/(-sqrt(3)*sqrt(1 - 2*sqrt(5)/5)/3 + 1)
# 135° -1
# 138° (-9 - sqrt(5) + sqrt(30 - 6*sqrt(5)))/(sqrt(3) + sqrt(2)*sqrt(5 - sqrt(5)) + sqrt(15))
# 141° (-8 - sqrt(15) + sqrt(3) + sqrt(2*sqrt(5) + 10))/(-1 + sqrt(5) + sqrt(6)*sqrt(sqrt(5) + 5))
# 144° -sqrt(5 - 2*sqrt(5))
# 147° (-8 - sqrt(10 - 2*sqrt(5)) + sqrt(3) + sqrt(15))/(1 + sqrt(5) + sqrt(6)*sqrt(5 - sqrt(5)))
# 150° -sqrt(3)/3
# 153° -sqrt(5) - sqrt(10 - 2*sqrt(5))/4 + 1 + sqrt(5)*sqrt(10 - 2*sqrt(5))/4
# 156° (-sqrt(2*sqrt(5)/5 + 1) + sqrt(3)/3)/(sqrt(3)*sqrt(2*sqrt(5)/5 + 1)/3 + 1)
# 159° (-sqrt(15) - sqrt(2*sqrt(5) + 10) + sqrt(3) + 8)/(-sqrt(6)*sqrt(sqrt(5) + 5) - 1 + sqrt(5))
# 162° -sqrt(25 - 10*sqrt(5))/5
# 165° -2 + sqrt(3)
# 168° (-sqrt(2*sqrt(5) + 5) + sqrt(3))/(1 + sqrt(3)*sqrt(2*sqrt(5) + 5))
# 171° -sqrt(5) - 1 + sqrt(2*sqrt(5) + 10)/4 + sqrt(5)*sqrt(2*sqrt(5) + 10)/4
# 174° (-sqrt(6*sqrt(5) + 30) - sqrt(5) + 9)/(-sqrt(2)*sqrt(sqrt(5) + 5) - sqrt(3) + sqrt(15))
# 177° (-8 + sqrt(3) + sqrt(10 - 2*sqrt(5)) + sqrt(15))/(-sqrt(5) - 1 + sqrt(6)*sqrt(5 - sqrt(5)))
# 180° 0
```

# 参考
＞Important Angles
勉強中

https://science-log.com/%E6%95%B0%E5%AD%A6/%E6%9C%89%E5%90%8D%E8%A7%92%E3%83%BB%E6%BA%96%E6%9C%89%E5%90%8D%E8%A7%92%E3%81%AEsin%E3%83%BBcos%E3%81%AE%E5%80%A4/