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

记载内容目录:

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 os

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

文件夹操作

import os
import sys

dir_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 shutil
temp_path = "e:/temp/llll"
if os.path.exists(temp_path):
    shutil.rmtree(temp_path) 

# 复制
import shutil
shutil.copytree("e:/llll",temp_path + "/")

# 重命名文件夹/文件
os.rename("e:/temp/llll","e:/temp/test_temp_folder")

# 删除目录下文件和文件夹
import shutil
shutil.rmtree("e:/temp")
shutil.rmtree("e:/llll")

文件操作

import os
import 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 shutil
shutil.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 os
import sys
#1.对文件夹和文件夹的操作 可以使用上述方法

# cd  cd /d 
os.chdir("..")
os.chdir("e:/")   

# dir
print(os.listdir())
print(os.listdir("c:/"))

# echo
print(" 直接用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 platform
print(platform.platform())  #输出 Windows-10-10.0.10240-SP0

猜你喜欢

转载自blog.csdn.net/biospc/article/details/77427432
今日推荐