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 ...
随机推荐
- 【原创】Linux cpuidle framework
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...
- Jenkins教程(三)添加凭据与流水线拉取Git代码
前言 本文旨在配置凭据.使用Git仓库中的Jenkinsfile与使用声明式流水线拉取Git代码 使用SVN等其他版本控制工具,请参考使用Pipeline-Syntax生成对应代码块 凭据(crede ...
- ZAO 换脸不安全?用 python 轻松实现 AI
最近两天一款名为 「ZAO」 的 App 刷爆了朋友圈,它的主打功能是 AI 换脸,宣称「只需一张照片,就能出演天下好戏」 : 现实中不能实现当明星的梦,在这个 App 里你可以,想演谁演谁.新鲜.好 ...
- 你好spring-cloud-kubernetes
关于spring-cloud-kubernetes spring-cloud-kubernetes是springcloud官方推出的开源项目,用于将Spring Cloud和Spring Boot应用 ...
- Java-手动搭建SSM(Maven)
一.环境部署 操作系统:windows10专业版 jdk:1.8.0_144 IDE:eclipse-oxygen 服务器:tomcat 9.0 数据库:mysql 5.7.18 Maven:3.54 ...
- 手把手教你用深度学习做物体检测(六):YOLOv2介绍
本文接着上一篇<手把手教你用深度学习做物体检测(五):YOLOv1介绍>文章,介绍YOLOv2在v1上的改进.有些性能度量指标术语看不懂没关系,后续会有通俗易懂的关于性能度量指标的介绍文章 ...
- python控制窗口移动(画圆)
import win32con import win32gui import time import math notepad = win32gui.FindWindow("Notepad& ...
- CodeForces Round #499 Div2
A: Stages 题意: 给你n个字符, 现在需要从中选取m个字符,每个字符的花费为在字母表的第几位,并且如果选了某个字符, 那么下一个选择的字符必须要在字母表的2位之后, 假如选了e 那么 不能选 ...
- 迷宫问题 POJ - 3984 [kuangbin带你飞]专题一 简单搜索
定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, ...
- Android源码阅读技巧--查找开发者选项中显示触摸操作源码
在开发者模式下,在开发者选项中,可以勾选“显示触摸操作”,然后只要点击屏幕就会在点击的位置有圈圈显示.如何找到绘制圈圈的代码部分,有什么技巧来阅读代码量这么大的android系统源码呢?以下请跟着小老 ...