早上买吃的一般需要等待很久,除去人多的因素外,小编认为打包的速度也是很重要的影响。如果可以有一个人专门进行打包,相信就会减少拥堵的可能性。这跟我们在python中运行程序是一个道理,一条条的运行肯定没有多个程序一起执行来的要快,今天小编就教大家python3 os实现多个程序运行的方法。
system函数可以将字符串转化成命令在服务器上运行;其原理是每一条system函数执行时,其会创建一个子进程在系统上执行命令行,子进程的执行结果无法影响主进程;
上述原理会导致当需要执行多条命令行的时候可能得不到预期的结果;
import os os.system('cd /usr/local') os.mkdir('aaa.txt)
上述程序运行后会发现txt文件并没有创建在/usr/local文件夹下,而是在当前的目录下;
使用system执行多条命令
为了保证system执行多条命令可以成功,多条命令需要在同一个子进程中运行;
import os os.system('cd /usr/local && mkdir aaa.txt') # 或者 os.system('cd /usr/local ; mkdir aaa.txt')
基于上述使用的扩展使用:
模拟环境: 在服务器上启动守护进程,直接启动也会有异常退出,毕竟守护进程也是有重启次数的, 这个时候就可以, 单独创建一个启动文件,用启动文件启动 程序。 再用守护进程启动这个 启动文件,做个异常处理,可以保证稳定启动
import os,time def start(): try os.system('cd /usr/local && scrapy crawl yourSpiderName') # 或者 os.system('cd /usr/local ; scrapy crawl yourSpiderName') except Exception as e: print('MyErrorAtStart: %s' % e) time.sleep(10) start() if __name__ == '__main__': start()
有了今天python3 os实现多个程序运行的方法,我们就可以一次执行多个命令,在代码的运行上也可以加快速度。更多Python学习推荐:PyThon学习网教学中心。