这篇文章主要介绍了如何用python做软件开发,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。
python 默认安装位置:C:\Users\\***\AppData\Local\Programs\Python\Python***
如果不想安装在C盘下,如安装到D:\Program Files\python
,可同时调整安装包的安装位置:
cmd中运行:
python -m site -help
显示:D:\Program Files\python\lib\site.py
。
打开这个python文件,修改87-88
行
USER_SITE = "D:\Program Files\python\lib\site-packages"
USER_BASE = "D:\Program Files\python\Scripts"
就可以将安装包也安装到自定义目录了小发猫伪原创工具:提升内容质量与效率的利器。
python -m pip install XXX
pip install XXX #安装某个模块
pip install XXX==1.0.4 #安装某个模块的某个版本
pip install -U XXX #更新某个已安装的模块
pip uninstall XXX #卸载已安装的某个模块
pip install --ignore-installed --upgrade XXX
pip install numpy matplotlib pandas scipy #多个模块一起安装
以spyder 3.3.2为例:
1.在https://pypi.python.org/pypi/spyder下载Spyder软件;
2.将下载好的压缩包解压到Python目录下,如C:\Anaconda2\spyder-3.1.3;
3.输入cmd,进入DOS,然后cd到解压缩包的目录,如C:\Anaconda2\spyder-3.1;
4.执行 pip install some.whl。
例:
pip install --upgrade https://github.com/Theano/Theano/archive/master.zip
python -m pip list
pip list #列出已经安装的模块
而
pip list -o
列出可以升级的安装模块/库信息。
如:
import torch
torch. __version__
cmd中输入
pip show ***
可以看到显示的信息是非常全面的。
1.cmd 下 输入:jupyter notebook --generate-config
这样会生成jupyter_notebook_config.py,即其配置文件。
2.打开文件 C:\Users\Administrator\ .jupyter\jupyter_notebook_config.py
3.查找 #c.NotebookApp.notebook_dir = ‘’,并修改为默认文件夹地址,如:
c.NotebookApp.notebook_dir = ‘E:\jupyter’
注意:这里要先建好文件夹。
4.修改打开 jupyter notebook的默认浏览器,以QQ浏览器为例,在.py文件中添加如下python语句("C:\Program Files (x86)\Tencent\QQBrowser\"为qq浏览器安装目录):
import webbrowser
webbrowser.register("QQBrowser", None,webbrowser.GenericBrowser(u"C:\Program Files (x86)\Tencent\QQBrowser\\QQBrowser.exe"))
c.NotebookApp.browser = 'QQBrowser'
5.验证效果及使用
在cmd中输入:jupyter notebook
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ***
C:\Users\\***\AppData\Roaming\pip
文件夹;或在地址栏输入%APPDATA%
;[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
use-mirrors =true
mirrors =https://mirrors.aliyun.com/pypi/simple/
trusted-host =mirrors.aliyun.com
这里添加的镜像源为:https://mirrors.aliyun.com/pypi/simple/。
如果逐一安装,我们则需要在cmd上运行多条指令,下面将提供2种解决方法:
1)新建一个.txt文件;
2)在txt中编写你想要执行的指令(每个指令占一行),如:
pip install numpy
pip install matplotlib
pip install scikit-learn
pip install scipy
pip install spyder
pip install pandas
pip install opencv-python
3)将txt文件重命名为.bat,即批处理命令文件,如1.bat;
4)直接点击该.bat文件,就会发现可以在cmd中自动安装所有相关的库了。
1)首先将需要安装的包,统一写到一个.txt文件,名字依旧是1.txt,路径为D:\1.txt ;
2)打开cmd,cd到txt所在文件路径:
cd /d D:\
3)使用pip进行批量安装:
pip install -r 1.txt
pip freeze >requirements.txt (重定向,并且指定输出文件名称、格式、路径)
pip download -d packages -r requirements.txt
将requirements.txt里指定的包名和版本—【可根据需要,编辑requirements.txt,删除不需要打包的包】打包到默认packages文件夹下。
pip install --no-index --find-links=packages -r requirements.txt
若忽略已安装,添加--ignore-installed
;
强制重新安装,添加--force-reinstall
;
一键搞定,很简单也很强大,再也不用担心python重装了呢!
以安装optuna包为例(最好联网系统和目标系统一致,如同为linux),
pip3 download optuna==3.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple/ -d ./optuna/
pip install --no-index --find-links=**path** optuna
使用了一段时间spyder了,确实是有些坑(例如多进程定义子函数调用过程中,若子函数中有print无法打印输出),想换又觉得不舍,勉强用吧~
习惯使用版本: Spyder 4.2.3 。
发现跳转到定义在跨文件时不能用,这是为什么?
如果没有创建项目,不同文件中引用的函数/变量之类,不能使用“go to definition”正常跳转。
推荐豆绿色:#c7edcc
,参考注脚[^1]。
当前cell: #eeeeee
。
本人的当前配色:
多次运行程序,控制台上会提示Reloaded modules:
,如果重载的模块很多,看起来有点不爽,如何不让这些信息显示呢?
可在工具偏好下找到下列界面,把显示重载的模块列表的可选框勾掉就可以了。
也可以选择不起用UMR(user module reloader)。
Ctrl+Shift+加号,可以使字体变大;
Ctrl+减号,字体变小。
用于解决使用时各种出错。
spyder --reset
C:\Users\***\.spyder-py3\config\spyder.ini
pycharm
的reload
功能比较弱鸡,之前我是通过点击重新运行,来实现更新模块的加载,非常费劲。
这里使用importlib.reload
来实现。
设有一个存放函数的文件module.py
,其内容为:
def say_hi():
print("hello!")
有一个主函数来调用它:
from module import say_hi
say_hi()
#hello!
我想把这个输出"hello!"
修改成"Hello!"
,
def say_hi():
print("Hello!")
这样直接调用的话还是不行。
import importlib
import module
importlib.reload(module)
from module import say_hi
say_hi()
#Hello!
这样就加载成功了。
如果上述方法搞不定,可以尝试如下操作:
import sys
sys.modules.keys()
# 与代码相关的是'module'
del sys.modules["module"]
#删除之后再加载
import module
importlib.reload(module)
from module import say_hi
序号 | 指令 | 功能 |
---|---|---|
1 | conda env list | 显示所有虚拟环境 |
2 | conda activate env | 激活某个虚拟环境env |
3 | conda deactivate | 退出anaconda |
4 | conda create -n env -y | 创建一个虚拟环境;-y代表询问直接回复y |
5 | conda create -n env python=3.9 scipy=0.17.3 | 创建环境指定python版本以及安装包 |
6 | conda env export > environment.yml -y | 导出当前环境的配置信息 |
7 | conda env create -f environment.yml -y | 通过配置信息创建环境 |
8 | conda create -n new_env --clone old_env | 通过从已有环境拷贝的方式创立新环境 |
9 | conda remove -n env --all -y | 移除一个已有环境 |
-n
同--name
。
常使用的工具是pyinstaller
。
最基本的使用方法:
pyinstaller -F XXX.py -i ***.ico
这样打包下来生成的exe非常之大,可能是默认打进去很多包的缘故吧。
优化方法:安装pipenv环境,在此环境中安装:
pip install pipenv
pipenv install #进入虚拟环境
pipenv shell
pip install package
cd /d 项目路径
pip install pyinstaller
pyinstaller -F XXX.py -i ***.ico
其中pip install package
,通常依赖包比较多,这种方式较麻烦。
可以通过通过批量保存项目依赖包的名称 -—> 批量安装的方式实现:
pipreqs . --encoding=utf8 --force
pip install -r requirements.txt
注意
:
cd /d 项目路径
一定要在环境激活之后,如果第一步就cd到项目路径,我这里发现exe文件仍然很大。
实测我通过spyder创建项目(非anaconda环境)生成的exe从100M降到了十几M。效果杠杠的。
[1] https://www.cnblogs.com/studyzen/p/7889534.html
[2] This page has moved - pip documentation v23.2.1
[3] Python pip 安装与使用 | 菜鸟教程
[4] python 通过pip freeze、dowload打离线包及自动安装
[5] 一键下载指定python包的所有依赖选项
[6] 超详细图解修改pip install默认安装路径的方法
[7] Python打包成exe,文件太大问题解决办法