Colorful Life2010

Python在Windows下使用系统命令
Weather:晴 ,北风 4-5级 ,最低气温-6 ℃

前段时间在学习时使用Python编写程式,调用系统命令对相关的文件进行操作,一直有错误,也没整明白到底是怎么回事。

今天重新拿出来测试,也让大脑回归了一下,发现了问题所在。

在现在大家常用的WINDOWS版本中,系统自带的command window已经可以很好的支持空格(“ ”)了,比如说一个文件名或是一个文件夹(路径)名,都可以包含空格,而这些是在以前的DOS甚至在UNIX系列的操作系统中不允许的,也正是这些空格才导致的上次的程序一直过不去。

我用的是安装的WinRar命令,此命令位于C:\Program Files\WinRAR\Rar.exe,即使用自然字符串r'C:\Program Files\WinRAR\Rar.exe'或是转义符'C:\\Program Files\\WinRAR\\Rar.exe',都不行,因为空格没有转义符,今天想到,在纯DOS下,这种长文件名应该有其方法的,在纯DOS下,如果一个文件或文件夹的名超过6个字符(不包括扩展名),那么就只取前6个字符,后面再加后辍再进行标识。所以上面的命令就可以变成

r'C:\Progra~1\WinRAR\Rar.exe'了,这样再运行程序,就没什么问题啦。

其实还是按书上来的写,Python有自己的zip压缩类库的,也可以直接导入此类库,那样就不用为这种事烦恼了

import zipfile或是import tarfile,如果说编程的时候考虑到夸平台的话,那就得用这个命令了,并且压缩出的结果也得考虑,用.gz.或.tar这两种格式会比.zip好很多,当然更比.rar好很多了。

(12/22) 大杂烩

[Python在Windows下使用系统命令]的回复

Post a Comment~