python执⾏bat⽂件_配置点击就能运⾏Python程序的bat批处
理脚本
0,需求说明
在编写和调试程序时,⼀般我们会在集成编辑环境⾥写代码和运⾏,但如果程序⽐较完善需要快速运⾏,或者让同事在其他电脑上快速运⾏时,再打开IDE(Integrated Development Environment , 集成开发环境)运⾏就有些⿇烦了,对⽅也不⼀定很熟练使⽤命令⾏进⾏运⾏,因此在Windows下要解决这个问题⼀般有两种思路:1,把程序编译为exe⽂件,就是⼀个⼩软件,和QQ等软件的运⾏⽅式基本⽆差别,通过⿏标点击运⾏;2,另外的做法是编写批处理⽂件,点击批处理⽂件就会按顺序执⾏命令⾏(在其他电脑运⾏是需要保证对⽅正确安装了编程/编译环境,例如是运⾏Python程序需要安装好Python、Java程序需要安装好JDK并配置好环境变量)。
Windows下的批处理⽂件后缀是.bat;点击该⽂件就可以执⾏。.bat⽂件是可执⾏⽂件,由⼀系列命令构成,其中可以包含对其他程序的调⽤。
下⾯具体说明通过bat批处理⽂件实现点击执⾏Python代码。
1,编写Python程序
如果本⾝程序⽐较完备了,这步跳过,下⾯新建⼀个超经典的hello world作为例⼦,选定⼀个⽂件夹然后新建⼀个⽂本⽂件,写⼊
print("hello world")。保存⽂件名为hellopy,把⽂件后缀从.txt改为.py
2,编写批处理脚本
同样新建⽂本⽂件,输⼊ python hellopy.py。保存为helloshell,后缀是.bat。然后点击helloshell.bat就可以看到⿊⾊的命令⾏窗⼝⼀闪⽽过,这是因为运⾏后cmd会⾃动关闭,因此为了看效果可以考虑⽤time.sleep(10)或选择运⾏程序后新建⼀个⽂件以显⽰程序正确运⾏了,以采⽤sleep的⽅案为例,把hellopy.py中的代码改为:import time
print("hello world")
time.sleep(5)
其中`time.sleep(5)` 表⽰程序运⾏到这⼀⾏会休眠5秒。
完成上述步骤后有两个⽂件如图:
需运⾏的程序和批处理⽂件
点击运⾏:
4,点击运⾏jupyter notebook导出的程序
以上步骤已经实现了基础需求,继续让例⼦更有针对性,在数据科学实践中,⼤家喜欢⽤Jupyter notebook进⾏运⾏和调试,但是有些常规需求我们不想再打开notebook⼀个个cell点击运⾏,想之间点击⼀下就⾃动化处理excel,这个需求就改⼀下bat⽂件就好,⾸先把jupyter notebook中能够正常运⾏的程序导出为py⽂件,在⼯具栏的File->Download As->Python(.py) 下,例如以下代码,读取⼀个Excel,对Excel进⾏处理后把数据框(DataFrame)的数据保存到⼀个Excel⾥。
在File->Download As->Python(.py)中导出Python⽂件using2019fords.py,然后把bat⽂件中的内容更新为 python
using2019fords.py。点击运⾏就可以。
5,把bat⽂件放桌⾯
把bat移到桌⾯,运⾏更⽅便,程序和数据仍然在特定⽂件夹下,这时候可以直接写 python d:/⽂件夹路径/python⽂件名.py,保存后运⾏就可以。
另外就是按照cmd的步骤写,先定位到⽬标⽂件夹下,然后是 python⽂件名.py。
在桌⾯运⾏bat⽂件例⼦
6,运⾏bat中传参数
⼀般⽐较推荐把参数写⼊Python程序⾥,但也可以在批处理⽂件中传参数。bat中的语法是 python⽂件名.py参数1参数2。
对应的Python⽂件中接受参数的代码为(using2019fords.py仍为jupyter notebook中导出的⽂件):# coding: utf-8
# In[1]:
import time
import pandas as pd
# In[2]:
import sys
python怎么读取桌面上的文件print("当前运⾏脚本:", sys.argv[0])
print("运⾏时间:",time.localtime(time.time())) #
for i in range(1, len(sys.argv)): #有哪些参数
print("参数{0}为:{1}".format(i, sys.argv[i])) #对参数进⾏处理
wp=r"J:\LinuxLearn\cixinliu\clickToRunBat"
ad_excel(wp+"/hellodata.xlsx")
# In[7]:
adf.head(2)
# In[ ]:
#对读⼊的表进⾏逻辑处理
# In[4]:
adf['D']=adf["C"].apply(lambda x:x*2)
# In[6]:
<_excel(wp+"/out_hellodata.xlsx")#输出
print("finish")
time.sleep(5)
运⾏效果如下:
另外可能会遇到的需求是代码⽐较固定了,需要每天定时运⾏程序读取⽂件更新数据、发邮件等,定时运⾏的做法可以参考 定时运⾏Python程序。
Linux
⽤Linux的同学⼤部分都习惯于直接写命令⾏了,语法和Windows下的⼀致,⾸先定位到Python程序所在的⽬录下,然后⽤ python maincode.py运⾏。在Linux和Mac下的批处理⽂件⽂件后缀是.sh 。下⾯是⼀个运⾏的具体例⼦,Python程序仍然⽤前⾯说的hellopy.py。
Ubuntu下运⾏sh⽂件例⼦

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。