1 python string floating-point error-handling
我的目标是创建一个将度数转换为弧度的程序.公式是(度*3.14)/ 180.但是python不断给我这个错误:
Traceback (most recent call last):
File "2.py", line 6, in <module>
main()
File "2.py", line 4, in main
degrees = (degrees * 3.14) / 180
TypeError: can't multiply sequence by non-int of type 'float'
Run Code Online (Sandbox Code Playgroud)
从这段代码:
def main():
degrees = raw_input("Enter your degrees: ")
float(degrees)
degrees = (degrees * 3.14) / 180
main()
Run Code Online (Sandbox Code Playgroud)
编辑:谢谢大家的帮助!
float(degrees)
Run Code Online (Sandbox Code Playgroud)
什么都不做 或者说,它从字符串输入度开始浮动,但不会将其放在任何位置,因此度数保持字符串.这就是TypeError所说的:你要求它将字符串乘以3.14.
degrees = float(degrees)
Run Code Online (Sandbox Code Playgroud)
会做的.
顺便说一下,在数学模块中已经有了在度和弧度之间转换的函数:
>>> from math import degrees, radians, pi
>>> radians(45)
0.7853981633974483
>>> degrees(radians(45))
45.0
>>> degrees(pi/2)
90.0
Run Code Online (Sandbox Code Playgroud)