python(jupyter)中的错误:索引1超出轴0的范围,大小为1

计算科学 Python
2021-12-10 04:24:23

我是 python 的爱好者,我在 jupyter 中写了一个简单的代码。但它给出了一个错误。我想绘制一个函数:

import numpy as np
import math as m
#from scipy import random
import matplotlib.pyplot as plt

y1=np.zeros(10)      
y2=np.zeros(360)   
x=np.array(range(10))
print("a")

    x=np.linspace(0,100,1)
    d=1.0
    y=np.linspace(0,100,1)
    sigma=np.linspace(0,100,1)
    for i in range(0,100,1):
        y[i]= x[i]**2+d**2`

但是我得到一个错误的输出:1.0


IndexError Traceback (最近一次调用最后一次) in () 4 sigma=np.linspace(0,100,1) 5 for i in range(0,100,1): ----> 6 y[i]= x[i] 2+ d 2 7 print(y[i]) 8 # sigma[i]=1/(y[i])

IndexError:索引 1 超出轴 0 的范围,大小为 1

1.0


IndexError Traceback (最近一次调用最后一次) in () 4 sigma=np.linspace(0,100,1) 5 for i in range(0,100,1): ----> 6 y[i]= x[i] 2+ d 2 7 print(y[i]) 8 # sigma[i]=1/(y[i])

IndexError:索引 1 超出轴 0 的范围,大小为 1 1.0

IndexError Traceback (最近一次调用最后一次) in () 4 sigma=np.linspace(0,100,1) 5 for i in range(0,100,1): ----> 6 y[i]= x[i] 2+ d 2 7 print(y[i]) 8 # sigma[i]=1/(y[i])

请帮我找出问题

1个回答

错误消息很容易解释。请注意

x=np.linspace(0,100,1) 

[0.]

可能你想写:x=np.linspace(0,1,100)在文档https://numpy.org/doc/stable/reference/generated/numpy.linspace.html中,您可以观察到前两个参数是startand stop,而您可能写了样本数num来代替stop

同样的故事y