Модуль Pycharm numpy не имеет атрибута «py» - PullRequest
0 голосов
/ 28 апреля 2020

Просто попадаешь в программирование, пройдя через множество начинающих проектов. Я начал один для построения кривых синуса и косинуса, и код, который они дали, был:

import matplotlib.pyplot as plt
import numpy as np


x = np.arange(0, 4*np.py, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.show()

Каждый раз, когда я пытаюсь запустить код, он выдает ошибку:

Traceback (most recent call last):
  File "C:/Users/Alex/PycharmProjects/projects2/sin2.py", line 5, in <module>
    x = np.arange(0, 4*np.py, 0.1)
  File "C:\Users\Alex\anaconda3\envs\projects2\lib\site-packages\numpy\__init__.py", line 220, in __getattr__
    "{!r}".format(__name__, attr))
AttributeError: module 'numpy' has no attribute 'py'

I переустановил Python, pycharm и numpy безрезультатно. Я считаю, что правильно использую интерпретатор anaconda и вижу, что numpy правильно установлен на нем. Я не уверен, что еще я должен попробовать, поэтому любые предложения помогут. Может мне стоит попробовать другую IDE? До сих пор мне нравится Pycharm, но я видел других людей с похожими проблемами, использующих Pycharm, поэтому любые предложения там также будут приветствоваться.

Ответы [ 3 ]

1 голос
/ 28 апреля 2020

Я думаю, что вы пытаетесь получить np.pi Константа 3.1415926535897932384626433 ...

Если вы измените ее в своем коде:

import matplotlib.pyplot as plt
import numpy as np


x = np.arange(0, 4 * np.pi, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.show()

Правильно работает

0 голосов
/ 28 апреля 2020

Я не знаю, почему вы используете 4 * np.py , я видел документацию NumPy, и у нее нет такого атрибута, как py. Вы можете попробовать следующее:

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.title('sine wave')      # To give a title
plt.xlabel('Time')          # To give a x-label
plt.ylabel('Y-values')      # To give a y-label
plt.grid(True, which='both')  # Turns Grid to True
plt.axhline(y=0, color='k')   # Draw a black horizontal line at y=0
plt.show()

Вывод:

sine wave

0 голосов
/ 28 апреля 2020

Я не очень знаком с numpy, но я просмотрел документы и не смог найти ничего, чтобы py был частью numpy. Может быть, я не выглядел достаточно усердно, но его можно было заменить обновлением? Кроме того, вы можете попробовать изменить его на «np.py ()» с круглыми скобками, потому что вместо этого это может быть просто функция (однако это, вероятно, вряд ли предполагает, что вы получили это из готового проекта).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...