windows环境下搭建python虚拟环境及离线移植
以python3.6为例
①安装virtualenv:
#pip安装之后在D:\Python36\Scripts目录下可以看到多了一个virtualenv.exe可执行文件
pip install virtualenv
②创建一个虚拟环境:
# venvname为虚拟环境名,会在当前目录下创建一个虚拟环境
virtualenv [venvname]

ps:当系统存在多个python版本时,直接执行这个命令会使用系统默认的python版本创建虚拟环境(windows下系统环境变量path中最靠前的python为默认版本),要指定python版本有以下2种方法:
1.virtualenv -p指定python解释器
#windows下路径为python解释器的完整路径,mac下路径为python安装目录路径(执行virtuaenv命令即可查看各命令选项),如下为windows示例
virtualenv -p D:\Python36\python.exe test1


2.将D:\Python27\Scripts\目录下的virtualenv.exe更改名称,比如加上版本号区分:virtualenv2.exe
③启动&退出虚拟环境:
# 启动虚拟环境时需要先切换到虚拟环境的Scripts目录下再执行如下命令。
activate
#退出虚拟环境
deactivate

ps:mac下这个命令为source venv/bin/activate
以上虚拟环境的安装和创建就ok了,每次激活后就可以正常使用,接下来是虚拟环境在无网环境下的移植(切记,A和B 2个服务器上的python版本一定要一致!!!不仅是版本号,还有64bit或者32bit这些)
A----->B(将A机器上的虚拟环境在无网情况下移植到B)
A机器上已有虚拟环境:
① 生成安装包列表文件:
ps:这个命令在非虚拟环境也可以使用,可以生成pip list获取的所有(除去python自带的)包列表
# 安装包列表保存到文件packages.txt中,文件名是自己定义,如果文件已经存在会被覆盖更新,不存在会自动创建
#需要在虚拟环境目录下执行这个命令(无需activate激活),否则生成的文件内容是系统python版本使用的安装包列表
pip freeze >packages.txt
② 将包列表文件中的所有包下载到文件夹下:
#savetest\whls为保存安装包的路径,不存在会被创建,packages.txt为前一步生成的包列表文件
pip download -d [savetest\whls] -r [packages.txt]

B机器上有没有虚拟环境都可以
无虚拟环境直接在python环境下做以下操作
有虚拟环境则在虚拟环境下做以下操作,
③ 将①和②中生成的包列表文件和安装包文件夹复制到B机器上
④ 依据包列表文件以及安装包文件夹来安装包:
#savetest\whls为安装包文件夹路径,packages.txt为包文件列表(注意相对路径和绝对路径的选择)
pip install --no-index --find-links=[savetest\whls] -r [packages.txt]
ps:如果是在有网络的情况下要移植环境,pip install -r [packages.txt] 即可
常见问题:
1.一段时间不使用虚拟环境,在使用时报错了,解决如下

2.今天迁移到无法访问外网的环境折腾了一天,各种报错,下载pip和setuptools的wheel失败什么的,就算忽略这2个的安装,在读文件安装包的时候也会报错说找不到该包,最后发现是本地的python是32bit的,新环境装的是64bit的!!!!!具体问题如下:
①如果是迁移到虚拟环境出现了以下问题

解决方案:

如果需要pip和setuptools这些工具,可以在虚拟环境下手工安装
②提示文档中的包,在包文件夹下找不到,但是检查是有的。后来发现是因为本地是python3.6.5-32bit,但是要迁移的目标服务器是python3.6.5-64bit,,后来重装了python就好了
https://www.cnblogs.com/yy-cola/p/9764822.html
linux下也相似,参考:
https://www.cnblogs.com/wt11/p/6216508.html
windows环境下搭建python虚拟环境及离线移植的更多相关文章
- 4.1. 如何在Windows环境下开发Python
4.1. 如何在Windows环境下开发Python 4.1. 如何在Windows环境下开发Python 4.1.1. Python的最原始的开发方式是什么样的 4.1.1.1. 找个文本编辑器,新 ...
- freeSSHD在windows环境下搭建SFTP服务器
freeSSHD在windows环境下搭建SFTP服务器 0 建议现在windows环境下安装cygwin,否则在windows环境下cmd模式使用不了sftp去连接,可以利用win scp去测试连接 ...
- 【大数据系列】windows环境下搭建hadoop开发环境使用api进行基本操作
前言 搭建完hadoop集群之后在windows环境下搭建java项目进行测试 操作hdfs中的文件 版本一 package com.slp.hadoop274.hdfs; import java.i ...
- Windows环境下搭建MosQuitto服务器
Windows环境下搭建MosQuitto服务器 2018年04月16日 22:00:01 wistronpj 阅读数:1185 摘自:https://blog.csdn.net/pjlxm/art ...
- Apache Nifi在Windows环境下搭建伪群集及证书登录
代码地址如下:http://www.demodashi.com/demo/11986.html 前些时间做了关于Apache Nifi分布式集群的搭建分享,但很多时候要搭建分布式集群机器资源是个问题, ...
- windows 环境下搭建docker私有仓库
windows 环境下搭建docker私有仓库 1.在公用仓库中pull仓库镜像 docker pull regitry 2.启动仓库镜像 //-d意思是后台运行,-p是做端口映射,这里是将本地的50 ...
- 从零开始Windows环境下安装python+tensorflow
从零开始Windows环境下安装python+tensorflow 2017年07月12日 02:30:47 qq_16257817 阅读数:29173 标签: windowspython机器学习te ...
- Centos7.4环境下搭建Python开发环境(虚拟机安装+python安装+pycharm安装)
目录 一.安装 Centos7.4虚拟机 二.安装 python3.6.7 三.安装 pycharm 一般情况下,大家都是在 Windows平台下进行 Python开发,软件安装和环境搭建都非常&qu ...
- windows环境下搭建ffmpeg开发环境
ffmpeg是一个开源.跨平台的程序库,能够使用在windows.linux等平台下,本文将简单解说windows环境下ffmpeg开发环境搭建过程,本人使用的操作系统为windows ...
随机推荐
- Unity 自定义Inspector面板时的数据持久化问题
自定义Inspector面板的步骤: Unity内创建自定义的Inspector需要在Asset的任意文件夹下创建一个名字是Editor的文件夹,随后这个文件夹内的cs文件就会被放在vstu生成的Ed ...
- JSON格式提取相同属性的某个值
[ {UID:"222",value:"111"}, {UID:"222",value:"103"}, {UID:&qu ...
- python 实现多个线程间消息队列传递,一个简单的列子
#-*-coding:utf8-*-"""Producer and consumer models: 1. There are many producers and co ...
- spring-cloud-kubernetes背后的三个关键知识点
在<你好spring-cloud-kubernetes>一文中,对spring-cloud-kubernetes这个SpringCloud官方kubernetes服务框架有了基本了解,今天 ...
- 深入理解 Handler 消息机制
记得很多年前的一次面试中,面试官问了这么一个问题,你在项目中一般如何实现线程切换? 他的本意应该是考察 RxJava 的使用,只是我的答案是 Handler,他也就没有再追问下去了.在早期 Andro ...
- JOBDU 1108 堆栈的使用
之所以把这道题目贴出来的原因,是因为真的有几个地方要注意的 题目1108:堆栈的使用 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:10763 解决:3119 题目描述: 堆栈是一种基本的 ...
- codeforces 478 D. Red-Green Towers(背包)
题目链接:http://codeforces.com/problemset/problem/478/D 题意:给出红色方块r个,绿色方块g个,问最高能叠几层等腰三角形,而且每一层的颜色必须相同. 题解 ...
- CCPC-Wannafly Camp #4(部分解题报告)
B: 电音之王 时间限制: 7 Sec 内存限制: 1024 MB 第一次听说快速乘法,记录一下,用的大佬的板子 #include<bits/stdc++.h> #define LL l ...
- Mysql高手系列 - 第7篇:玩转select条件查询,避免踩坑
这是Mysql系列第7篇. 环境:mysql5.7.25,cmd命令中进行演示. 电商中:我们想查看某个用户所有的订单,或者想查看某个用户在某个时间段内所有的订单,此时我们需要对订单表数据进行筛选,按 ...
- 阿里巴巴资深技术专家雷卷:值得开发者关注的 Java 8 后时代的语言特性
作者 | 阿里巴巴资深技术专家 雷卷,GitHub ID @linux-china 导读:在 Python.JavaScript 等一众编程语言崛起风靡之际,一代霸主 Java 风采虽不及当年,但仍 ...