Chorzen 2016-10-12 01:06 采纳率: 50%
浏览 1236
已采纳

在mac OS10.11.6中python3使用paperclip模块接收不到命令行参数的问题

使用的python版本为3.5.2
我的代码如下:

#!/usr/local/bin/python3
# coding=utf-8
d = {
    'A': 98,
    'B': 22,
}

import sys
import pyperclip
if len(sys.argv) < 2:
    print("Not copy!")
    sys.exit()

account = sys.argv[1]

if account in d:
    pyperclip.copy(d[account])
    print('d for' + account + 'copied to clipboard')
else:
    print('no name')

错误消息如下:
(还有一个问题,在终端中要运行要直接运行*.py文件的话需要先进入vim才能进行
./text.py A(A为参数)操作,该文件的执行权限已赋予,为啥还要进入vim进行操作呢- -)

 -> % vim text.py 

Traceback (most recent call last):
  File "./text.py", line 17, in <module>
    pyperclip.copy(d[account])
  File "/usr/local/lib/python3.5/site-packages/pyperclip/clipboards.py", line 16, in copy_osx
    p.communicate(input=text.encode('utf-8'))
AttributeError: 'int' object has no attribute 'encode'

希望得到大家的帮助,不然后面的学习还真不好弄啊,拜托啦~

  • 写回答

2条回答

  • 朕就是这么帅 2016-10-12 01:44
    关注

    并不是没有接受到命令行的参数,而是pyperclip 复制方法的编码的问题,方法里int 类型没有 encode 编码属性,改成字符串就行了
    图片说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog