博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python开发注意事项
阅读量:7237 次
发布时间:2019-06-29

本文共 1896 字,大约阅读时间需要 6 分钟。

仅为记录自己在使用python过程的的一些心得!
 
1、服务器上运行脚本:
windows服务器:
显式运行:在cmd中直接用python xxxx.py  运行一个py脚本文件。
后台运行:在cmd中用pythonw xxxx.py 在后台运行一个py脚本文件,系统会在后台启动一个python进程来执行脚本。
 
Linux服务器:
显式运行:直接用python xxxx.py运行py文件
后台运行:使用 nohup 命令,语法格式: nohup Command [ Arg … ] [ & ]
             示例: nohup python xxxx.py &
定期运行:配置任务计划,每隔10分钟运行一次,此方案前提是脚本运行时长必须是可控的,不能超过间隔时长。
                 新建aaa.sh文件(假设目录为:/usr/py/),添加如下内容:
#!/bin/bashcd /usr/pypython monitor.py

             确保py文件有被执行的权限:chmod a+x /usr/py/monitor.py

             py文件最开头添加:#!/usr/bin/python

         运行crontab -e 启动任务计划编辑,在最后添加一行: */10 * * * * /bin/bash  /usr/py/aaa.sh    ,然后保存退出即可,任务将每隔10分钟运行一次(如整点、整点10分、整点20分等);

                注意事项:此运行模式下,需确保py文件中所引用的资源为绝对路径(如其他py文件、ini文件等),不能使用相对路径。

                                采用sh脚本来启动python,执行py脚本,是因为直接在crontab中配置启动python的话,总是不能成功启动,原因未知。

 
 
2、运行过程中占用内存不断增加,需手动释放内存,用del命令删掉使用过的对象
del dictNodeInfo del objServerJson del objHealthJson del objNodesJson del serverinfo del healthinfo del nodesread del conn
3、类库使用:
pymssql:
使用  import pymssql 时需注意python和pymssql的版本,需保持一致,32位的python配32位的pymssql
错误示例:import pymssql   DLL load failed: %1 不是有效的 Win32 应用程序

pika
将pika目录,拷贝至python安装目录的Lib下即可,如:
 
4、操作cmd命令:
(1)引入类包
import os
 
(2)执行cmd命令
import os
os.system(“ping
1.用os.system(cmd)   不过取不了返回值 2.用os.popen(cmd)   要得到命令的输出内容,只需再调用下read()或readlines()等
如a=os.popen(cmd).read()
user=os.popen(runpath,'r').read()
3.用 commands 模块。其实也是对popen的封装。此模块主要有如下方法
commands.
getstatusoutput
(
cmd
) 返回
(status, output).
commands.
getoutput
(
cmd
) 只返回输出结果
commands.
getstatus
(
file
) 返回ls -ld file的执行结果字符串,调用了getoutput,不建议使用此方法.
>>> import commands>>> commands.getstatusoutput('ls /bin/ls')(0, '/bin/ls')>>> commands.getstatusoutput('cat /bin/junk')(256, 'cat: /bin/junk: No such file or directory')>>> commands.getstatusoutput('/bin/junk')(256, 'sh: /bin/junk: not found')>>> commands.getoutput('ls /bin/ls')'/bin/ls'>>> commands.getstatus('/bin/ls')'-rwxr-xr-x  1 root        13352 Oct 14  1994 /bin/ls'
 

转载于:https://www.cnblogs.com/lijunhao/p/5473807.html

你可能感兴趣的文章
前端js:超级基础 ++x 和 x++
查看>>
《概念数学》第一章:伽利略与物体的乘法
查看>>
axios请求数据
查看>>
mysql5 7配置不生效解决记录
查看>>
不需要远程kernel就能在浏览器上运行 为数据科学实验和沟通打造的工具
查看>>
iOS - XML解析
查看>>
数据与前端
查看>>
react-copy-write 基于新 Context 和 immer 的 React 状态管理库
查看>>
RE|GoF的23种设计模式-4
查看>>
探究JavaScript中的继承
查看>>
python中list详解
查看>>
那时为了金三银四,我所整理的java面试题汇总
查看>>
[给创业公司的原生云] ①原生云是什么
查看>>
初识web-components 并且快速实现todolist
查看>>
51信用卡 Android 自动埋点实践
查看>>
activiti web流程设计器 整合视频 教程 SSM和独立部署的方式
查看>>
Android Menu
查看>>
担心被淘汰?请看这份财会人员晋升指南!
查看>>
JB的小程序之旅-小程序基础(登录授权、请求数据)
查看>>
(七)微服务分布式云架构spring cloud - common-service 项目构建过程
查看>>