我是靠谱客的博主 传统铅笔,最近开发中收集的这篇文章主要介绍windows环境下python安装pycrypto遇到的问题解决,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

    最近在学习使用python管理服务器,所以需要使用ssh等远程登录服务。在安装对于的python库pycrypto的时候,遇到了一些小问题,终于在参考别人的方法之后,成功安装。

    我使用的是python 2.7.13版本,有些问题在python3下解决方法不同。

    首先,。一般在官方网站下载:https://www.dlitz.net/software/pycrypto/。然后使用命令就可以安装成功了:
           python setup.py build
           python setup.py install
      但是在windows下会报错:Python error: Unable to find vcvarsall.bat
       这个问题在这个url:http://www.biaodianfu.com/python-error-unable-to-find-vcvarsall-bat.html所讲的已经很详细了。我试了一下,对于2.x的版本,下载微软的那个Microsoft Visual C++ Compiler Package for Python 2.7,是比较简单的方法。但是,这个软件下载安装完成之后,依然是不能使用的。

       

错误原因: 
报这个错误的原因是Python的distutils模块中的msvc9compiler.py并不从环境变量指定的路径中寻找’vcvarsall.bat’,而是通过注册表来寻找…,然而,不知为什么编译器安装过程没有配置注册表。

解决办法: 
只要手工把注册表配置好,就可以了。 
// 1、打开注册表编辑器 
run regedit 
// 2、配置 
// 2.1、如果你安装的Python是32位的,则,创建如下: 
HKEY_CURRENT_USERSoftwareMicrosoftVisualStudio9.0SetupVC 
// 2.2、如果你安装的Python是64位的,则,创建如下: 
HKEY_CURRENT_USERSoftwareWow6432NodeMicrosoftVisualStudio9.0SetupVC 
// 3、并在此项下新建字符串值: 
名称:productdir 
数据:vcvarsall.bat所在的文件路径 
注意:路径中不包含最后的反斜杠。

但是,有时候你做完上面的操作之后,会出现新的报错。

若遇到类似“UnicodeEncodeError: 'ascii' codec can't encode character u'u6211' in position 0: ordinal not in range(128)”的问题,可以在 Python 的安装目录(默认为C:Python27)下的 Libsite-packages 文件夹中新建一个文件sitecustomize.py,添加如下代码并保存:


  1. import sys
  2. sys.setdefaultencoding('gb2312')
Python

切记,该文件会更改 Python 的默认编码,以后出现类似的问题,可尝试将代码中的 gb2312 改为 utf-8 或 ascii ,然后再次尝试。


        

最后

以上就是传统铅笔为你收集整理的windows环境下python安装pycrypto遇到的问题解决的全部内容,希望文章能够帮你解决windows环境下python安装pycrypto遇到的问题解决所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部