Python 打开目录与指定文件

Python打开外部文件有很多方法,

os.popen打开外部程序,但发现只能打开文件所在目录的文件

os.system可打开外部文件os.system(command) command 要执行的命令,相当于在Windows的cmd窗口中输入的命令。如果要向程序或者脚本传递参数,可以使用空格分隔程序及多个参数。

os.startfile  (推荐)
可打开外部程序os.startfile (path [, operation])这样执行的动作与在Windows Explorer中双击文件相同。在应用程序运行之后, 函数就会返回。此外不能等待完成或者从应用程序获得退出代码。path的值是相对于当前目录而言。operation是一个可选的字符串, 用于指定打开path时执行的动作。它的默认值是 ‘open‘, 但也可以将它置为‘print’、‘edit‘、‘explore‘或‘find‘[确切的列表跟path的类型有关( Windows)]。

win32process.CreateProcess
参数说明:

CreateProcess(appName, commandLine , processAttributes , threadAttributes , bInheritHandles ,dwCreationFlags , newEnvironment , currentDirectory , startupinfo )


其参数含义如下。
appName:可执行的文件名。
commandLine:命令行参数。
processAttributes:进程安全属性,如果为None,则为默认的安全属性。
threadAttributes:线程安全属性,如果为None,则为默认的安全属性。
bInheritHandles:继承标志。
dwCreationFlags:创建标志。
newEnvironment:创建进程的环境变量。
currentDirectory:进程的当前目录。
startupinfo :创建进程的属性。
使用:
1 import win32process
2 win32process.CreateProcess(‘c:\\windows\\notepad.exe‘, ‘‘, None , None , 0 ,win32process. CREATE_NO_WINDOW , None , None , win32process.STARTUPINFO())



----------------------推荐使用startfile 和 win32process
 1       Obj=‘C:\Users\Administrator\Desktop‘   or ‘C:\Users\Administrator\Desktop\chrome.exe‘
 2       if Obj and os.path.exists(Obj):  #文件or 目录存在
 3             if os.path.isfile(Obj):
 4                 import win32process
 5                 try:   # 打开外部可执行程序
 6                     win32process.CreateProcess(Obj, ‘‘,None , None , 0 ,win32process. CREATE_NO_WINDOW , None , None ,win32process.STARTUPINFO())
 7                 except Exception, e:
 8                     print(e)
 9             else:
10                 os.startfile(str(Obj))  # 打开目录
11
12         else:  # 不存在的目录
13             print(‘不存在的目录‘)



 
时间: 2024-10-28 11:38:31

Python 打开目录与指定文件的相关文章

Python打开目录下所有文件

用Python打开指定目录下所有文件,统计文件里特定的字段信息. 这里是先进入2017-02-25到2017-03-03目录,然后进入特定IP段目录下,最后打开文件进行统计 import os, glob, re, sys from isCN import * urllocate = 6 if(len(sys.argv) < 3): print 'Useage comand JDName JDIPduan'; os.exit() print sys.argv[1]; ipDuan = sys.a

windows下Python打开包含中文路径名文件

windows使用gbx(gb2312,gbk,gb18030我也不知道是哪个)对文件名及文件路径进行编码保存.打开文件的函数中使用诸如open(filename.encode('gbk'))可以很好的解决. #coding:utf8 if __name__ == '__main__': srcfile = r"D:/测试路径/测试文件.txt" f = open(srcfile.decode('utf8').encode('gbk')) for text in f.readlines

C#中拷贝指定文件夹下的所有文件夹目录到指定文件夹中的方法

原文地址:http://www.biye5u.com/article/Csharp/fileprog/2011/4198.html 本文给出了一个在C#中拷贝指定文件夹下的所有文件夹目录到指定文件夹中的方法. public static void CopyFolder(string strFromPath,string strToPath){       //如果源文件夹不存在,则创建       if (!Directory.Exists(strFromPath))       {      

python 脚本(获取指定文件夹、指定文件格式、的代码行数、注释行数)

1.代码的运行结果: 获取 指定文件夹下.指定文件格式 文件的: 总代码行数.总注释行数(需指定注释格式).总空行数: 1 #coding: utf-8 2 import os, re 3 4 # 代码所在目录 5 FILE_PATH = './' 6 7 def analyze_code(codefilesource): 8 ''' 9 打开一个py文件,统计其中的代码行数,包括空行和注释 10 返回含该文件总行数,注释行数,空行数的列表 11 ''' 12 total_line = 0 13

Linux下给指定目录下指定文件类型生成md5文件

对指定目录下扩展名为.asset,.manifest,.wem,.bnk的文件计算md5并汇总到指定文件中. md5文件内容格式: 文件名,md5 类似: Audio_Knives_Skill_1_43_9E69E797.wem,bc87ec6bce97e93824a0fdfa39ebafaf Audio_Knives_Skill_1_43_50DB02DB.wem,78d62b1f25c59ddffcfcda75e555e850 Audio_Knives_Skill_2_44_9E69E797

python递归获取目录下指定文件

获取一个目录下所有指定格式的文件是实际生产中常见需求. import os #递归获取一个目录下所有的指定格式的文件 def get_jsonfile(path,file_list): dir_list=os.listdir(path) for x in dir_list: new_x=os.path.join(path,x) if os.path.isdir(new_x): get_jsonfile(new_x,file_list) else: file_tuple=os.path.split

Python语言获取目录下所有文件

#coding=utf-8# -*- coding: utf-8 -*-import osimport sysreload(sys) sys.setdefaultencoding('utf-8') def GetFileList(dir, fileList): newDir = dir if os.path.isfile(dir): fileList.append(dir.decode('gbk')) elif os.path.isdir(dir): for s in os.listdir(di

遍历目录寻找指定文件

#coding=utf-8 import os for fpathe,dirs,fs in os.walk('C:\\Users\\xinxin'):#其中一个\是转义字符 # print fpathe#要遍历的路径 # print dirs#包含的目录 # print fs#包含的文件 # print len(dirs),len(fs) for f in fs: # print os.path.basename(os.path.join(fpathe,f))#返回路径的文件名字 # print

【Python】用Python打开csv和xml文件

1 #coding=utf-8 2 import csv 3 with open("F:\\script\\py_scripts\\test2.csv","r") as csvfile: 4 read = csv.reader(csvfile) 5 for i in read: 6 print(i) 注意:csv文件生成的时候需要另存Excel文件选择csv格式,这样不会报错.