Python:在os.system中添加变量路径(“打开”和“x2B”文件名)
我试图创建一个脚本,python在其中遍历一个目录,找到以*ref.SDAT结尾的所有文件,然后将它们全部打开 到目前为止,我已经完成了文件的排序过程。需要的文件被放入reflist:Python:在os.system中添加变量路径(“打开”和“x2B”文件名),python,file,list,Python,File,List,我试图创建一个脚本,python在其中遍历一个目录,找到以*ref.SDAT结尾的所有文件,然后将它们全部打开 到目前为止,我已经完成了文件的排序过程。需要的文件被放入reflist: import os import glob import subprocess os.chdir("/Users/BabyJ/Desktop/MRSDATA") reflist = glob.glob('*raw_ref.SDAT') print "These are the ref files:" for
import os
import glob
import subprocess
os.chdir("/Users/BabyJ/Desktop/MRSDATA")
reflist = glob.glob('*raw_ref.SDAT')
print "These are the ref files:"
for i in reflist:
os.system('open+%s') %i
我不知道如何构造语法,以便os.system可以打开列表中的所有组件。操作员希望
%
字符串的左侧为'open+%s'
。您为它提供了os.system()
的返回值。另外,我认为您需要一个空格,而不是字符串中的+
试试这个:
os.system('open %s'%i)
我假设从您使用的
open
判断您是在Mac或Unix系统上。如果是这种情况,请使用以下任一方法来启动并运行
for i in reflist:
os.system('open ' + '%s' % i)
或:
使用subprocess是更好的解决方案,因为根据官方文档,os.system在Python中已被弃用,尽管从技术上讲,它并没有脱离该语言
希望有帮助
编辑:
如果您在的开始中使用windows sub,请打开
for i in reflist:
subprocess.call('open ' + '%s' % i, shell = True)