Python 圆绘图程序
我试图制作一个程序,使用用户输入的半径和中心坐标绘制一个圆。这就是我目前所拥有的Python 圆绘图程序,python,string,int,geometry,Python,String,Int,Geometry,我试图制作一个程序,使用用户输入的半径和中心坐标绘制一个圆。这就是我目前所拥有的 import numpy as np import matplotlib.pyplot as plt def circle(r,h,k,domain): x = np.array(domain) y = eval(np.sqrt(r**2 - (x-h)**2) + k) plt.plot(x,y) plt.show rad = input("Radius: ") xcen = i
import numpy as np
import matplotlib.pyplot as plt
def circle(r,h,k,domain):
x = np.array(domain)
y = eval(np.sqrt(r**2 - (x-h)**2) + k)
plt.plot(x,y)
plt.show
rad = input("Radius: ")
xcen = int(input("Center X Coordinate: "))
ycen = int(input("Center Y Coordinate: "))
circle(rad,xcen,ycen,np.linspace(-10,10,500))
print("Done")
当我运行它时,我得到一个关于行y=eval(np.sqrt(r**2-(x-h)**2)+k)
半径:5
中心X坐标:0
中心Y坐标:0
回溯(最近一次呼叫最后一次):
文件“/Users/William/Documents/Science/PYTHON3/Circle.py”,第13行,在
圆(rad、xcen、ycen、np.linspace(-10,10500))
文件“/Users/William/Documents/Science/PYTHON3/Circle.py”,第5行,圆圈中
y=评估(np.sqrt(r**2-(x-h)**2)+k)
TypeError:不支持**或pow()的操作数类型:'str'和'int'
>>>
这是什么意思?为什么说str
和int
不能与**
rad = input("Radius: ")
在Python3.X中,input
返回的结果是一个字符串。然后,该字符串被传递到圆圈
,您尝试将其平方。但是你不能把一根线弄成正方形
使用前将rad
转换为数字
rad = float(input("Radius: "))
在Python3.X中,input
返回的结果是一个字符串。然后,该字符串被传递到圆圈
,您尝试将其平方。但是你不能把一根线弄成正方形
使用前将rad
转换为数字
rad = float(input("Radius: "))
在Python3.X中,input
返回的结果是一个字符串。然后,该字符串被传递到圆圈
,您尝试将其平方。但是你不能把一根线弄成正方形
使用前将rad
转换为数字
rad = float(input("Radius: "))
在Python3.X中,input
返回的结果是一个字符串。然后,该字符串被传递到圆圈
,您尝试将其平方。但是你不能把一根线弄成正方形
使用前将rad
转换为数字
rad = float(input("Radius: "))
“为什么它说
str
和int
不能与***
一起使用”-那么你希望'foo'**3
产生什么呢?“为什么它说str
和int
不能与***
一起使用”-那么你希望'foo'**3
产生什么呢?“为什么它说str
和int
不能与**
一起使用”-那么你希望'foo'**3
产生什么呢?”为什么它说str
和int
不能与**/code>一起使用“-那么您希望'foo'**3
产生什么?我可以在3.X中仍然使用int还是float更好?您可以使用int
,但用户将无法输入像“1.5”这样的分数半径。我可以在3.X中仍然使用int还是float更好?您可以使用int
,但是用户将无法输入像“1.5”这样的分数半径。我仍然可以在3.X中使用int还是float更好?您可以使用int
,但用户将无法输入像“1.5”这样的分数半径。我仍然可以在3.X中使用int还是float更好?您可以使用int
,但是用户不能输入像“1.5”这样的分数半径。