Reputation: 23
Basically, I downloaded the library using pip install PyDictionary
and I made sure it exists by writing the same thing again and this appeared:
Requirement already satisfied: PyDictionary in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (2.0.1)
Requirement already satisfied: bs4 in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from PyDictionary) (0.0.1)
Requirement already satisfied: goslate in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from PyDictionary) (1.5.1)
Requirement already satisfied: requests in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from PyDictionary) (2.25.1)
Requirement already satisfied: click in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from PyDictionary) (7.1.2)
Requirement already satisfied: beautifulsoup4 in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from bs4->PyDictionary) (4.9.3)
Requirement already satisfied: soupsieve>1.2 in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from beautifulsoup4->bs4->PyDictionary) (2.2.1)
Requirement already satisfied: futures in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from goslate->PyDictionary) (3.1.1)
Requirement already satisfied: idna<3,>=2.5 in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from requests->PyDictionary) (2.10)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from requests->PyDictionary) (1.26.4)
Requirement already satisfied: chardet<5,>=3.0.2 in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from requests->PyDictionary) (4.0.0)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\ziad\appdata\local\programs\python\python39\lib\site-packages (from requests->PyDictionary) (2020.12.5)
However, when I try to run this simple program in atom, it says module not found. This is the program:
from PyDictionary import PyDictionary
dictionary = PyDictionary()
print (dictionary.meaning("indentation"))
This is the error:
Traceback (most recent call last):
File "C:\Users\Ziad\Desktop\programs\Dictionary.py", line 1, in <module>
from PyDictionary import PyDictionary
ModuleNotFoundError: No module named 'PyDictionary'
The only way I found to execute the program correctly was by moving the file to the folder where the library exists so that atom can find the library. The weird thing is that the library numpy works perfectly. I would really like an answer to this problem.
Upvotes: 2
Views: 2922
Reputation: 1
python -m pip install --upgrade pip setuptools wheel
Worked for me
Upvotes: 0
Reputation: 1
Type this
python -m pip install --upgrade pip setuptools wheel
Make sure you include the empty spaces. Then:
C:/Python36/Scripts/pip install Pydictionary
Notes: You are installing the PyDictionary for a specific python version to see what version of python you have installed on the terminal, type py and press enter then type your version on the Python36 ... make sure you use the capital letter on the name Python, Scripts...I had the same problem and I installed the python27 version.
Upvotes: 0
Reputation: 3100
What you're having issues with is that your pip
command, is not connected to your installation of python3
.
If you're using Windows, then you should have a "python launcher" that you can use to double-check your installed versions of Python like this:
PS C:\> py -0
Installed Pythons found by C:\windows\py.exe Launcher for Windows
-3.9-64 *
-3.7-32
Here you can see that I have two versions of Python installed on my device. So, let's check what both of those installations has installed using their own versions of pip
.
Let's start with my 3.7
installation:
PS C:\> py -3.7 -m pip list
Package Version
------------------ ---------
beautifulsoup4 4.8.1
Jinja2 2.11.2
keyring 21.2.0
Here we can see that I have three packages installed.
Now let's check my 3.9
installation:
PS C:\> py -3.9 -m pip list
Package Version
-------------------------------- ---------
matplotlib 3.4.1
numpy 1.19.4
pandas 1.1.5
pip 21.0.1
What I am doing above basically, is calling the different python
installations, and opening it with the following flag:
-m mod : run library module as a script (terminates option list)
The pip
command is basically just an alias for <python-installation> -m pip
, so when I issue the above command, I am launching pip
with a specific python-installation.
If you do not have the "python-launcher" that I have in my above examples, but you have different aliases for your python-interpreters, then you can issue the same commands in the same way, just using your aliases.
Here are a couple of examples:
# will show you the installed packages for the alias "python2"
python2 -m pip list
# will show you the installed packages for the alias "python3"
python3 -m pip list
And you can obviously issue other commands to pip
using that same logic, so if you want to install a package for a specific version you can do something like:
# will try to install the given package for the alias "python3"
python3 -m pip install <nameOfPackage>
Upvotes: 4