Python 2.7 pip安装包类型错误:在字符串格式化过程中未转换所有参数

Python 2.7 pip安装包类型错误:在字符串格式化过程中未转换所有参数,python-2.7,pip,gpio,Python 2.7,Pip,Gpio,当我想使用pip在我的windows 10计算机上安装名为RPi.GPIO的软件包时,会出现此错误。我还尝试手动下载并安装此软件包(python setup.py install),但没有成功。如何解决此问题 running build_py creating build creating build\lib.win32-2.7 creating build\lib.win32-2.7\RPi copying RPi\__init__.py -&g

当我想使用pip在我的windows 10计算机上安装名为RPi.GPIO的软件包时,会出现此错误。我还尝试手动下载并安装此软件包(python setup.py install),但没有成功。如何解决此问题

    running build_py

    creating build

    creating build\lib.win32-2.7

    creating build\lib.win32-2.7\RPi

    copying RPi\__init__.py -> build\lib.win32-2.7\RPi

    running build_ext

    building 'RPi.GPIO' extension

    Traceback (most recent call last):

      File "<string>", line 1, in <module>

      File"c:\users\chenz\appdata\local\temp\pip_build_chenz\RPi.GPIO\setup.py",  line 47, in <module>

    ext_modules      = [Extension('RPi.GPIO', ['source/py_gpio.c', 'source/c_gpio.c', 'source/cpuinfo.c', 'source/event_gpio.c', 'source/soft_pwm.c', 'source/py_pwm.c', 'source/common.c', 'source/constants.c'])])

  File "C:\Python27\lib\distutils\core.py", line 151, in setup

    dist.run_commands()

  File "C:\Python27\lib\distutils\dist.py", line 953, in run_commands

    self.run_command(cmd)

  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command

    cmd_obj.run()

  File "C:\Python27\lib\site-packages\setuptools\command\install.py", line 61, in run

    return orig.install.run(self)

  File "C:\Python27\lib\distutils\command\install.py", line 563, in run

    self.run_command('build')

  File "C:\Python27\lib\distutils\cmd.py", line 326, in run_command

    self.distribution.run_command(command)

  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command

    cmd_obj.run()

  File "C:\Python27\lib\distutils\command\build.py", line 127, in run

    self.run_command(cmd_name)

  File "C:\Python27\lib\distutils\cmd.py", line 326, in run_command

    self.distribution.run_command(command)

  File "C:\Python27\lib\distutils\dist.py", line 972, in run_command

    cmd_obj.run()

  File "C:\Python27\lib\site-packages\setuptools\command\build_ext.py", line 54, in run

    _build_ext.run(self)

  File "C:\Python27\lib\distutils\command\build_ext.py", line 337, in run

    self.build_extensions()

  File "C:\Python27\lib\distutils\command\build_ext.py", line 446, in build_extensions

    self.build_extension(ext)

  File "C:\Python27\lib\site-packages\setuptools\command\build_ext.py", line 187, in build_extension

    _build_ext.build_extension(self, ext)

  File "C:\Python27\lib\distutils\command\build_ext.py", line 496, in build_extension

    depends=ext.depends)

  File "C:\Python27\lib\distutils\msvc9compiler.py", line 473, in compile

    self.initialize()

  File "C:\Python27\lib\distutils\msvc9compiler.py", line 383, in initialize

    vc_env = query_vcvarsall(VERSION, plat_spec)

  File "C:\Python27\lib\distutils\msvc9compiler.py", line 266, in query_vcvarsall

    vcvarsall = find_vcvarsall(version)

  File "C:\Python27\lib\distutils\msvc9compiler.py", line 243, in find_vcvarsall

    toolskey = "VS0.f0COMNTOOLS" % version

TypeError: not all arguments converted during string formatting
运行build\u py
创建构建
正在创建build\lib.win32-2.7
正在创建build\lib.win32-2.7\RPi
正在复制RPi\\ uuuu init\ uuuu.py->build\lib.win32-2.7\RPi
运行build_ext
正在生成“RPi.GPIO”扩展
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“c:\users\chenz\appdata\local\temp\pip\u build\u chenz\RPi.GPIO\setup.py”,第47行,在
ext_modules=[扩展名('RPi.GPIO'、['source/py_GPIO.c'、'source/c_GPIO.c'、'source/cpuinfo.c'、'source/event_GPIO.c'、'source/soft_pwm.c'、'source/py_pwm.c'、'source/common.c'、'source/constants.c']))
文件“C:\Python27\lib\distutils\core.py”,第151行,在安装程序中
dist.run_命令()
文件“C:\Python27\lib\distutils\dist.py”,第953行,在run\u命令中
self.run_命令(cmd)
文件“C:\Python27\lib\distutils\dist.py”,第972行,在run\u命令中
cmd_obj.run()
文件“C:\Python27\lib\site packages\setuptools\command\install.py”,第61行,正在运行
返回原始安装运行(自身)
文件“C:\Python27\lib\distutils\command\install.py”,第563行,正在运行
self.run_命令('build'))
文件“C:\Python27\lib\distutils\cmd.py”,第326行,在run\u命令中
self.distribution.run_命令(command)
文件“C:\Python27\lib\distutils\dist.py”,第972行,在run\u命令中
cmd_obj.run()
文件“C:\Python27\lib\distutils\command\build.py”,第127行,正在运行
self.run_命令(cmd_名称)
文件“C:\Python27\lib\distutils\cmd.py”,第326行,在run\u命令中
self.distribution.run_命令(command)
文件“C:\Python27\lib\distutils\dist.py”,第972行,在run\u命令中
cmd_obj.run()
文件“C:\Python27\lib\site packages\setuptools\command\build\u ext.py”,第54行,正在运行
_构建外部运行(自身)
文件“C:\Python27\lib\distutils\command\build\u ext.py”,第337行,正在运行
self.build_扩展()
文件“C:\Python27\lib\distutils\command\build\u ext.py”,第446行,内部版本扩展名
自构建扩展(ext)
文件“C:\Python27\lib\site packages\setuptools\command\build\u ext.py”,第187行,内部版本扩展名
_build\u ext.build\u扩展(self,ext)
文件“C:\Python27\lib\distutils\command\build\u ext.py”,第496行,内部版本扩展名
dependens=ext.dependens)
文件“C:\Python27\lib\distutils\msvc9compiler.py”,第473行,在compile中
self.initialize()
文件“C:\Python27\lib\distutils\msvc9compiler.py”,第383行,在初始化中
vc_env=query_vcvarsall(版本、平台规范)
文件“C:\Python27\lib\distutils\msvc9compiler.py”,第266行,位于查询\u vcvarsall中
vcvarsall=find_vcvarsall(版本)
文件“C:\Python27\lib\distutils\msvc9compiler.py”,第243行,位于find\u vcvarsall中
toolskey=“VS0.f0COMNTOOLS”%version
TypeError:在字符串格式化过程中并非所有参数都已转换
为了修复此问题,我编辑了msvc9compiler.py的第243行,但遗漏了一个“%”。 让我们忘掉这个愚蠢的问题吧。
顺便说一下,我下载了Visual C++ 2008 Express版来修复错误:无法找到vcValsAl.BAT。这就是工作。

只要看看失败的那一行:
版本在
“VS0.f0COMNTOOLS”
中应该放在哪里?它应该是这样的:您使用的是哪些版本的Python/distutils?谢谢!我使用ActivePython 2.7.10.12。这个版本的distutils会导致这个错误吗?也许我可以编辑msvc9compiler.py来修复这个问题。我不知道,我从来没有使用过ActivePython,也不知道他们使用什么distutils。考虑一下与维护者一起提高这一点。这很有帮助。再次感谢。