当前位置: 首页 > news >正文

python3之os、sys

os模块

# 显示当前使用平台:"nt":windows;"posix":Linux
>>> os.name
'nt'

# 当前工作目录
>>> os.getcwd()
'D:\\python_file'

# 执行系统操作指令
>>> os.system("echo 'hello world'")

# 当前工作目录下的文件或目录
>>> os.listdir()
['.idea', 'Atm', 'day5', 'request_study', 'study', 'venv']

# 返回指定目录下的文件和目录名
>>> os.listdir(r"D:\python_file\day5")
['os.py', 'randoms.py', 'time_test.py', '__init__.py']

# 显示当前操作系统下的路径分隔符
>>> os.sep
'\\'

# 显示当前操作系统下的行终止符
>>> os.linesep
'\r\n'

# 用于分割文件路径的字符串
>>> os.pathsep
';'

# 获取系统环境变量
>>> os.environ

# 返回当前目录
>>> os.curdir
'.'

# 返回上级目录
>>> os.pardir
'..'



# 切换目录到指定目录
>>> os.chdir(r"D:\python3.7")

# 创建单层目录
>>> os.mkdir("a")

# 生成多层递归目录
>>> os.makedirs(r"D:\python_file\request_files\b_001\b_002\b_003")

# 删除指定的文件
>>> os.remove("a.txt")

# 删除指定目录
>>> os.rmdir(r"D:\python_file\request_files\b_001\b_002\b_003")

# 删除目录【文件夹为空删除】
>>> os.removedirs("D\python_file")

# 列出当前目录下的文件
>>> os.listdir(".")

# 返回文件或者目录信息
>>> os.stat("oldname.txt")


os.path

# 返回绝对路径
>>> os.path.abspath(".")
'D:\\python3.7'

# 返回结尾目录、文件名
>>> os.path.basename(r"D:\python_file\day5") 
'day5'

# 返回list(多个路径)中,所有path共有的最短的路径。
>>> list=[r"D:\a",r"D:\a\b",r"D:\a\b\c"]     
>>> os.path.commonprefix(list)     
'D:\\a'

# 返回文件目录
>>> os.path.dirname(r"D:\a\b\c\a.txt") 
'D:\\a\\b\\c'
>>> os.path.dirname(r"D:\a\b\c") 
'D:\\a\\b'
>>> os.path.dirname(r"D:\a\b\c\")            
SyntaxError: EOL while scanning string literal

# 路径存在则返回True,路径损坏返回False
>>> os.path.exists(r"D:\a\b\c")        
False

# 返回最后一次进入此path的时间。
>>> os.path.getatime(r"D:\python_file")        
1535940322.6286159

# 返回在此path下最后一次修改的时间。
>>> os.path.getmtime(r"D:\python_file")        
1535940322.6286159

# 判断是否为绝对路径
>>> os.path.isabs(r"D:\a\b\c")      
True

# 判断路径是否为文件
>>> os.path.isfile(r"D:\a\b\c")      
False

# 判断路径是否为目录
>>> os.path.isdir(r"D:\a\b\c")      
False

# 判断路径是否为链接
>>> os.path.islink(r"D:\a\b\c")      
False

# 判断路径是否为挂载点()
>>> os.path.ismount(r"D:\a\b\c")      
False

# 把目录和文件名合成一个路径
>>> os.path.join(r"D:/", r"/a.txt")      
'D:/a.txt'

# 转换path的大小写和斜杠
>>> os.path.normcase(r"D:\a\b\c")      
'd:\\a\\b\\c'

# 判断目录或文件是否相同
>>> os.path.samefile(r"D:\a\b\c", r"D:\a\b\d")
False

# 把路径分割成dirname和basename,返回一个元组
>>> os.path.split(r"D:\a\b\d")          
('D:\\a\\b', 'd')

 sys模块

1 sys.argv           命令行参数List,第一个元素是程序本身路径
2 sys.exit(n)        退出程序,正常退出时exit(0)
3 sys.version        获取Python解释程序的版本信息
4 sys.maxint         最大的Int值
5 sys.path           返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
6 sys.platform       返回操作系统平台名称
7 sys.stdout.write('please:')
8 val = sys.stdin.readline()[:-1]

 

import shutil

# 将文件内容拷贝到另一个文件中,可以部分内容;文件b可以不存在
# shutil.copyfileobj("a.txt", "b", length=100)
# f1 = open("a.txt")
# f2 = open("b", "w")
# shutil.copyfileobj(f1, f2)

# 拷贝文件,文件b可以不存在
# shutil.copyfile("a.txt","b")

# 仅拷贝权限,内容、组、用户均不变;文件b必须存在
shutil.copymode("a.txt","b")

 

转载于:https://www.cnblogs.com/gxfaxe/p/9577201.html

相关文章:

  • 经典类、新式类,网络编程
  • app和bootloader跳转 MSP与PSP
  • 最近的一些心态
  • flex 布局
  • Redis的概念及与MySQL的区别
  • 1078 字符串压缩与解压
  • Go 导入当前项目下的包
  • jmter录制脚本、代理配置和操作
  • Python爬虫教程-31-创建 Scrapy 爬虫框架项目
  • 数据结构(二) 线性表
  • vue使用echarts
  • luogu 1772 物流运输 ZJOI2006 spfa+dp
  • Java快速教程
  • python接口自动化测试二十八:连接SQL sever操作
  • python中如何去掉字符串中的空格
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • CSS中外联样式表代表的含义
  • express + mock 让前后台并行开发
  • IDEA 插件开发入门教程
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • V4L2视频输入框架概述
  • 闭包,sync使用细节
  • 第十八天-企业应用架构模式-基本模式
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 聚簇索引和非聚簇索引
  • 前端自动化解决方案
  • 软件开发学习的5大技巧,你知道吗?
  • 为物联网而生:高性能时间序列数据库HiTSDB商业化首发!
  • 用quicker-worker.js轻松跑一个大数据遍历
  • 怎样选择前端框架
  • 2017年360最后一道编程题
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • ​2021半年盘点,不想你错过的重磅新书
  • (2)nginx 安装、启停
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (三) diretfbrc详解
  • (转)大型网站架构演变和知识体系
  • (转)母版页和相对路径
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .NET Project Open Day(2011.11.13)
  • .NET 简介:跨平台、开源、高性能的开发平台
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .NET中的Exception处理(C#)
  • @ConditionalOnProperty注解使用说明
  • @Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成
  • @四年级家长,这条香港优才计划+华侨生联考捷径,一定要看!
  • [ vulhub漏洞复现篇 ] JBOSS AS 5.x/6.x反序列化远程代码执行漏洞CVE-2017-12149
  • [2016.7 Day.4] T1 游戏 [正解:二分图 偏解:奇葩贪心+模拟?(不知如何称呼不过居然比std还快)]
  • [Android Studio] 开发Java 程序
  • [BT]小迪安全2023学习笔记(第15天:PHP开发-登录验证)