首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python 3 Pyperclip

Python 3 Pyperclip
EN

Stack Overflow用户
提问于 2018-01-04 10:14:39
回答 3查看 3.5K关注 0票数 0

我是Python的新手,我正在读“用Python自动化无聊的东西”一书(https://automatetheboringstuff.com/chapter6/)。我在Password Locker项目上工作,并且在pyperclip模块上遇到了困难。我在Mac OS X Yosemite上运行Python 3.6.2。

当我尝试通过终端运行我的程序时,我收到以下消息:

代码语言:javascript
复制
Traceback (most recent call last):
  File "./pw.py", line 8, in <module>
    import sys, pyperclip
ModuleNotFoundError: No module named 'pyperclip'

但是,我已经安装了pyperclip,当我尝试使用"pip3 install pyperclip“时收到此消息:

代码语言:javascript
复制
pip3 install pyperclip
Requirement already satisfied: pyperclip in     
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages

它在Shell中运行得很好:

代码语言:javascript
复制
>>> import pyperclip
>>> pyperclip.copy('hello')
>>> pyperclip.paste()
'hello'

除了实际的密码之外,我相信我的程序和书中的程序是一样的:

代码语言:javascript
复制
#! /usr/bin/env python3
# pw.py - An insecure password locker program.

PASSWORDS = {'email': '12345',
             'blog' : '54321',
             'luggage': '123456789' }

import sys, pyperclip
if len(sys.argv) < 2:
    print('Usage: python 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) 

我一直在试图找出为什么会发生这种情况,但还是弄不明白。再说一次,我对Python非常陌生,任何有帮助的见解都将不胜感激!谢谢!

EN

回答 3

Stack Overflow用户

发布于 2018-01-04 11:30:04

您提到pyperclip安装在

/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages

在脚本中,print(sys.path)并验证该目录是否可供您的程序导入。如果解释器和库仍然不匹配,可以考虑使用conda或virtualenv创建环境。

顺便说一句,请删除import行,并将两个新的import行放在shebang后面,这样它们就会出现在密码分配之前。这只是一种flake8风格的东西。

此外,考虑使用argparseclick,而不是读取sys.argv[1]。首先,你可以免费得到"--help“。

票数 1
EN

Stack Overflow用户

发布于 2018-01-12 06:17:12

#! /usr/bin/env python中更改shebang,然后使用python2运行它。

票数 0
EN

Stack Overflow用户

发布于 2020-05-17 12:37:21

为了让python发行版安装到正确的环境中,我真的很费力。我用anaconda navigator安装了pythong。这一点,加上mac上默认的python,再加上一些其他的,让我陷入了艰难的境地。(可能与您面临的情况类似。

我的修复方法是找出我的IDE (Spyder4)使用的是哪个python解释器,然后从那里运行引用此位置的安装命令。

更简单地说:

代码语言:javascript
复制
pip install pyperclip

变成了

代码语言:javascript
复制
/usr/local/anaconda3/bin/pip install pyperclip

这似乎为我解决了这个问题。祝所有其他面临类似情况的人好运。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48087788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档