终端声称没有找到pyperclip模块,但是我已经安装了pyperclip吗?

时间:2020-08-13 02:42:30

标签: python-3.x

因此,我是学习Python的新手,并且正在尝试从Autoing the Boring Stuff(特别是Password Locker Project)中执行一些Python代码。在书中,它告诉我们通过Terminal运行此程序(如下所示),所以我执行了以下步骤:

  1. 将代码保存在我的主文件夹中,并将其命名为pw.py
  2. 通过运行chmod +x pw.py
  3. 更改了.py的文件以使其可执行。
  4. 尝试通过在终端上输入./pw.py运行我的脚本

但是,当我运行代码时,终端表示没有名为pyperclip的模块(再次显示如下)。自然,我尝试使用prompt python3.8 -m pip install pyperclip安装pyperclip,但是Terminal声称我已经安装了pyperclip。关于如何解决此问题的任何想法?

这是尝试运行代码时在终端上看到的错误 Traceback (most recent call last): File "./pw.py", line 7, in <module> import sys, pyperclip ModuleNotFoundError: No module named 'pyperclip'

这是我尝试安装pyperclip时在终端上看到的错误

Requirement already satisfied: pyperclip in /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages (1.8.0)

这是我从“自动在无聊的东西中”复制的代码,该代码是我在IDLE上键入的。


PASSWORDS = {'email': 'F7minlBDDuvMJuxESSKHFhTxFtjVB6', 'blog': 'VmALvQyKAxiVH5G8v01if1MLZF3sdt', 'luggage': '12345'}

import sys, pyperclip
if len(sys.argv) < 2:
    print('Usage: py pw.py [account] - copy account password')
    sys.exit()

account = sys.argv[1] # first command line arg is the account name

if account in PASSWORDS:
    pyperclip.copy(PASSWORDS[account])
    print('Password for ' + account + ' copied to clipboard.')
else:
 print('There is no account named ' + account)

版本:python3

谢谢!

1 个答案:

答案 0 :(得分:2)

听起来很像您安装了多个Python。您专门使用python3.8安装了pyperclip,但是通过使用./pw.py执行脚本,可以将其与当前设置为默认值的其他安装一起运行。尝试python3.8 pw.py,看看是否可行。

编辑:很高兴!如果您想调查系统默认使用的版本,请尝试在命令行上输入python --version。就像M Z在下面的评论中提到的那样,sys.version_info(或者也就是sys.version)可以从脚本内部访问当前的Python版本。

相关问题