一、环境配置
(一)Anaconda虚拟环境
Anaconda默认进入虚拟环境设置(base或自行指定) (二)切换python环境
1、查看当前python环境
python --version
python3 --version # redhat只有python3,用上一行查不出来
2、查看系统中所有 版本都Python 的二进制文件
ls /usr/bin/python*
查询结果:
3、非root用户修改python版本(改成python3)
alias pythnotallow=’/usr/bin/python3’
系统级修改python版本参考:
二、安装相关工具包
1、单一python环境安装工具包
注意:非root用户需要加sudo
查看已安装工具包
pip list
安装新工具包
pip install ccxt
升级已有工具包
pip install --upgrade pip
过程中遇到pip命令失效,提示:-bash: /usr/bin/pip: No such file or directory
参考:
2、多个python版本环境安装工具包
python27 -m pip list # python27,必须是/usr/bin/目录下python文件名
python3 -m pip list # 多个python环境分别查看安装文件
pip下载与安装
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本
$ sudo python get-pip.py # 运行安装脚本,如果要安装到python3环境下,python改成python3
安装完pip,指定环境安装工具包
python3 -m pip install pandas
总结:太折腾了,下次一定装anaconda!!!
**三、**引用本地模块
开始跑测试程序,引用模块失败
ModuleNotFoundError: No module named '_0_FUNCTION'
由于引用了自己写的一个模块,没有加到PYTHONPATH,直接在pycharm运行是没问题,因为pycharm会默认把当前project加到sys.path.但是在命令行则不会报找不到自定义模块的错误
设置项目的初始位置,在任何位置执行代码可以找到import 项目包不出错
1、查看已有默认路径,并加入项目根目录所在路径
>>> import sys
>>> print(sys.path)
>>> sys.path.append('home/clouder/workspace/pycharm/xiaohui/scripts/common')
>>> print(sys.path)
2、永久添加
在用户目录下,找到隐藏文件.bashrc 文件
cd ~
ls -a # 查看所有文件
find -name .bashrc # 查询位置
2.1 文本编辑模式修改
vim .bashrc # 隐藏文件,WINSCP中可能设置不显示隐藏文件
export PYTHONPATH=$PYTHONPATH:/home/ec2-user/.../program # 注意路径拼写
# press esc
:wq # 保存
source .bashrc
四、试运行
1、cd到.py文件所在目录
2、输入:
python3 test.py
五、不间断运行程序
1、相关命令
nohup 用途:不挂断地运行命令。
& 用途:在后台运行
-u 取消python输出缓冲,直接可以在out文件查看
“>test.out” 指定输出文件,没有则默认输出到nohup.out
nohup python3 -u test.py >test.out &
六、查看.out文件结果
tail -f nohup.out # 查看最后几行
tail -1000 nohup.out # 查看最后1000行
通过ctrl+c关闭显示.out文件
七、 结束不间断运行程序
1、查看进程PID
ps -ef
2、手动结束进程
使用kill命令与PID来结束进程
/usr/bin/kill -KILL 1
注意:程序中运行多进程并发,会出现多个PID,关闭母进程即可
3、批量结束进程
pkill -f name
批量结束进程名中带有name的进程
八、遇到问题
1、进程不明原因被终止
通过修改oom_score_adj参数,减小进程的oom_score_adj值(越小越不容易被kill,不推荐)
echo "-100" > /proc/<pid>/oom_score_adj