Python学习记录——常用的IO操作及代替批处理命令

来源:互联网 发布:合肥市行知学校在哪 编辑:程序博客网 时间:2024/06/06 08:45

记载内容目录:

1.杂言杂语2.python代替shell/cmd中常用的操作    a.路径操作    b.文件夹操作    c.文件操作    d.其它一些常用的指令

杂言杂语

在上一个2048项目完成的时候,可以说就已经将py语言学完了!py对于我来说,它就是一个工具语言,不会用于开发项目的,至少现阶段是这样。用py开发工具的时候,仅有现在这点知识还是不够的,还欠一丢丢,这里的内容就是对这一丢丢进行补充。说说对py的感想吧!    先说说优点吧:    1.作为脚本语言来说拥有了脚本语言确实很不错了,不论是闭包的处理,还是调用的便利性,编译的速度都让人非常的满意    2.格式的缩进,标准格式后的代码的清爽会让看代码的人心情都好了起来。    3.支持跨平台    再来一发吐槽:    1.使用者需要安装python,虽然有办法打包成exe,可exe仅仅是windows的可执行文件    2.居然上下版本有些地方是不兼容,不通用的如果是新手学习python,我的观点是不建议使用python当成入门语言,因为新同学学习编程重心应该放在逻辑处理,学习如何写代码,并不是如何去排版。况且现在有很多的ide支持自动排版,要美观的话使用自动排版就好了。

python代替shell/cmd中常用的操作

路径操作

import osprint(os.getcwd())  # 获取当前工作目录 输出: g:\Programs\Pythonprint(os.path.join("D:/llleee","sdfdf")) # 拼接路径 输出: D:/llleee\sdfdfprint(os.path.exists("d:/llll/23242"))  # 查看 文件/文件夹 是否存在 输出: Falseprint(os.path.basename("d:/llll/23242.txt")) # 获取文件夹/文件 最基本的全称 输出 :#23242.txtprint(os.path.basename("d:/llll/23242")) # 输出:23242

文件夹操作

import osimport sysdir_path = "e:/llll/23242"if not os.path.exists(dir_path):   # 创建文件夹   # 虽然有mkdir方法,但是不推荐直接使用这个   # makedirs方法在遇到中间目录不存在也会去创建中间缺失的那部分目录    os.makedirs(dir_path)  # 获取目录下所有的子目录和文件 非遍历,只寻找指定层次print(os.listdir("e:/llll"))# 获取目录下所有的子目录和文件 遍历,# 获取的是所有层次下的文件夹跟文件 即 如果目录下有子目录则回去遍历子子目录 返回的是一个迭代器for tab in os.walk("e:/llll"):    print(tab)# 查询是不是目录print(os.path.isdir(dir_path))# 复制文件夹及文件夹下所有的文件到指定位置# 复制前的预备工作import shutiltemp_path = "e:/temp/llll"if os.path.exists(temp_path):    shutil.rmtree(temp_path) # 复制import shutilshutil.copytree("e:/llll",temp_path + "/")# 重命名文件夹/文件os.rename("e:/temp/llll","e:/temp/test_temp_folder")# 删除目录下文件和文件夹import shutilshutil.rmtree("e:/temp")shutil.rmtree("e:/llll")

文件操作

import osimport sys# 预备工作file_path = "e:/temp/Test.cs"if not os.path.exists(file_path):    exit()# 打开文件# 打开文件方式有三种大类型。r 读类型  w 写类型  a 追加类型content = open(file_path,"r+")# 读取文件for line in content:    print(line)# 对文件操作后需要关闭content.close()# 追加写入文件   content = open(file_path,"a+")content.writelines("llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll")# 对文件操作后需要关闭content.close()# 复制文件到指定位置import shutilshutil.copy(file_path,"e:/")# 删除文件#os.remove(file_path)base_name = os.path.basename(file_path)#os.remove(os.path.join("e:/",base_name))# 获取文件的后缀名print(os.path.splitext(file_path)[-1])

其它一些常用的指令

import osimport sys#1.对文件夹和文件夹的操作 可以使用上述方法# cd  cd /d os.chdir("..")os.chdir("e:/")   # dirprint(os.listdir())print(os.listdir("c:/"))# echoprint(" 直接用print替换echo ")# enter key# pause # 这里有个缺陷,按下键盘后需要再按下回车才能够响应# 优点是能够直接获取输入的是什么input("enter any key:")# 调用cmd/shell命令# 直接给参数   用于启动一个应用的时候使用os.system("start ping 127.0.0.1") # 不能给参数   启用一个应用的时候使用os.startfile("ipconfig")    # 其它一些重要信息# 获取调用这个py时传入的参数,默认第一个是自己,正式参数是从1开始的print(sys.argv) # 获取系统信息import platformprint(platform.platform())  #输出 Windows-10-10.0.10240-SP0
原创粉丝点击