仅为记录自己在使用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/bash
cd /usr/py
python 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 www.baidu.com”)
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'

Python开发注意事项的更多相关文章

  1. python 开发之路 - 入门

    一. python 介绍 Python是著名的"龟叔"Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言.1991年 发布Python ...

  2. python开发环境配置和python源码打包生成exe可执行文件

    Windows下开发环境准备 1.分别安装:python2和python32.安装Python的集成工具:Anaconda3.安装Pycharm Pycharm设置 设置: File->Sett ...

  3. python开发_python代码风格(coding style)

    我们要做python开发,我想python中的代码风格我们有必要了解一下 这样对我们自己和他们所编写的代码都有好处的. 下面是8点重要代码风格注意事项: ONE : Use 4-space inden ...

  4. 曾Python培训讲师-2年Python开发无包装简历-20191217-可公开

    目录 个人介绍 技能介绍 项目经历 自我评价 简历非完整版,需要完整版看下述信息,禁止任何一切私人用途.转发 我生日是27号,那就27元一份,有需求的来购买!只会涨价不会降价,大概卖10份涨1元:曾P ...

  5. 【Python开发】python集成开发环境IDE搭建

    http://blog.csdn.net/pipisorry/article/details/39854707 使用的系统及软件 Ubuntu / windows Python 2.7 / pytho ...

  6. 10个最容易犯的Python开发错误

    10个最容易犯的Python开发错误 转载 2017年09月25日 16:54:36 标签: python / 大数据 / 大讲台   Python是一门简单易学的编程语言,语法简洁而清晰,并且拥有丰 ...

  7. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  8. 【Machine Learning】Python开发工具:Anaconda+Sublime

    Python开发工具:Anaconda+Sublime 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现 ...

  9. Python开发工具PyCharm个性化设置(图解)

    Python开发工具PyCharm个性化设置,包括设置默认PyCharm解析器.设置缩进符为制表符.设置IDE皮肤主题等,大家参考使用吧. JetBrains PyCharm Pro 4.5.3 中文 ...

随机推荐

  1. 【LeetCode-面试算法经典-Java实现】【168-Excel Sheet Column Title(Excell列标题)】

    [168-Excel Sheet Column Title(Excell列标题)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 Given a positive in ...

  2. python部分

    读取骨骼数据相关的多个json,拼接到一起 # -- coding: utf-8 -- import os path = "./test" #文件夹目录 files= os.lis ...

  3. Ubuntu 16.04 安装 Open Jdk

    sudo add-apt-repository ppa:openjdk-r/ppa sudo apt-get update sudo apt-get install openjdk-7-jdk

  4. JAVA设计模式之【迭代器模式】

    迭代器模式 聚合类,聚合对象 电视机遥控器,迭代器,遍历局和对象中的成员 灵活新增遍历方法 将负责遍历数据的方法提取出来,封装到专门的类中,实现数据存储和数据遍历分离.这就是迭代器模式. 灵活性,可扩 ...

  5. su和sudo的区别与使用,su命令,linux命令

    su和sudo的区别与使用 一.   使用 su 命令临时切换用户身份 1. su 的适用条件和威力 su命令就是切换用户 的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务, ...

  6. JavaScript原型链:prototype与__proto__

    title: 'JavaScript原型链:prototype与__proto__' toc: false date: 2018-09-04 11:16:54 主要看了这一篇,讲解的很清晰,最主要的一 ...

  7. Codeforces 845C. Two TVs 思路:简单贪心算法

    题目: 题目原文链接:http://codeforces.com/contest/845/problem/C 题意:现在我们有一个电视清单,有两个电视,电视清单上有每一个节目的开始时间和结束时间. 电 ...

  8. MySQL存储过程和自定义函数、Navicat for mysql、创建存储过程和函数、调用存储过程和函数的区别

    1 MySQL存储过程和函数 过程和函数,它们被编译后保存在数据库中,称为持久性存储模块(Persistent Stored Module,PSM),可以反复调用,运行速度快. 1.1 存储过程 存储 ...

  9. Python读取Matlab的.mat文件

    参考网站: https://blog.csdn.net/rumswell/article/details/8545087 数据: R 22*22 double 部分截图如下: 使用sicpy.io即可 ...

  10. Centos 7 iptables 开放端口

    MySQL 开放远程连接时, 已经打开了对应端口的安全组发现还是连接不上, 那么就需要 check 一下防火墙端口是否开放. firewall-cmd --zone=public --query-po ...