python之IO目录处理
IO目录处理
在使用io常用函数之前,必须要在py文件头部import os。os是(Operation system)的缩写,意思就是系统操作。
1. 创建删除目录
- #!/usr/bin/python3
- # -*- coding: utf-8 -*-
- # @Time :2018/11/29 15:27
- # @Author :Yosef
- # @Email :wurz529@foxmail.com
- # @File: :class32.py
- # @Software :PyCharm Community Edition
- import os
- '''
- 创建目录,而非创建文件
- 创建文件,参考open中的model,删除文件则用到os.remove
- '''
- # os.mkdir("../python_io/") # make directory 创建一个目录
- # os.rmdir("../python_io") # remove directory 删除一个目录
- file = open("../python_io/testio.txt", "w", encoding="UTF-8") # 创建文件不要加上不存在的目录,否则报错;目录存在则创建文件成功
- file.close()
- os.remove("../python_io/testio.txt")
我创建删除目录,文件都是成功的。筒子们自己试一下。
2. 寻找目录/文件路径
- #!/usr/bin/python3
- # -*- coding: utf-8 -*-
- # @Time :2018/11/30 10:26
- # @Author :Yosef
- # @Email :wurz529@foxmail.com
- # @File: :class33.py
- # @Software :PyCharm Community Edition
- import os
- path=os.getcwd() #E:\python_workspace\StudyPython\os
- print(path)
- path=os.path.dirname(__file__) #E:/python_workspace/StudyPython/os
- print(path)
- path=os.path.realpath(__file__) # E:\python_workspace\StudyPython\os\class33.py
- print(path)
- path=os.path.basename(__file__) # class33.py
- print(path)
结果对比:
3. 目录路径的其他操作
3.1 文件路径拼接
os.path.join(a,b) a:py文件的同级目录,b新建的文件目录。新建只能一级一级的新建。拼接路径的时候,不能跨过不存在的路径,直接去新建一层的目录。
- import os
- new_file = os.path.join("sub_001", "test") # join(a,b)
- print(new_file)
- os.mkdir(new_file)
结果:
3.2 os.path.isdir / os.path.isfile 判断是否是目录,是否是文件
- #!/usr/bin/python3
- # -*- coding: utf-8 -*-
- # @Time :2018/11/30 14:13
- # @Author :Yosef
- # @Email :wurz529@foxmail.com
- # @File: :class34.py
- # @Software :PyCharm Community Edition
- import os
- path = os.getcwd()
- print(os.path.isdir(path))
- file = os.getcwd()+"/class34.py"
- print(os.path.isfile(file))
3.3 os.path.split() 目录分割
这个函数方法可以把切割路径,最后一层目录独立成为一个元素,返回结果是含有两个元素的元组。
参数说明:
- PATH指一个文件的全路径作为参数:
- 如果给出的是一个目录和文件名,则输出路径和文件名
- 如果给出的是一个目录名,则输出路径和为空文件名
实际上,该函数的分割并不智能,它仅仅是以 "PATH" 中最后一个 '/' 作为分隔符,分隔后,将索引为0的视为目录(路径),将索引为1的视为文件名,如:
>>> import os
>>> os.path.split('C:/soft/python/test.py')
('C:/soft/python', 'test.py')
>>> os.path.split('C:/soft/python/test')
('C:/soft/python', 'test')
>>> os.path.split('C:/soft/python/')
('C:/soft/python', '')
3.4 os.listdir() 列出目录下所有文件名
这个函数的作用是列出目录下所有的文件,返回结果是列表。
- import os
- path = os.getcwd()
- # path = os.path.realpath(__file__)
- # print(os.path.split(path))
- print(os.listdir(path))
结果如下:
python之IO目录处理的更多相关文章
- {python之IO多路复用} IO模型介绍 阻塞IO(blocking IO) 非阻塞IO(non-blocking IO) 多路复用IO(IO multiplexing) 异步IO(Asynchronous I/O) IO模型比较分析 selectors模块
python之IO多路复用 阅读目录 一 IO模型介绍 二 阻塞IO(blocking IO) 三 非阻塞IO(non-blocking IO) 四 多路复用IO(IO multiplexing) 五 ...
- python学习笔记目录
人生苦短,我学python学习笔记目录: week1 python入门week2 python基础week3 python进阶week4 python模块week5 python高阶week6 数据结 ...
- [Python_3] Python 函数 & IO
0. 说明 Python 函数 & IO 笔记,基于 Python 3.6.2 参考 Python: read(), readline()和readlines()使用方法及性能比较 Pyt ...
- python异步IO编程(二)
python异步IO编程(二) 目录 开门见山 Async IO设计模式 事件循环 asyncio 中的其他顶层函数 开门见山 下面我们用两个简单的例子来让你对异步IO有所了解 import asyn ...
- 老猿Python博文汇总目录--按标题排序
☞ ░ 前往老猿Python博文目录 ░ 本部分为老猿CSDN全部博文的汇总(含转载部分),所有文章在此未进行归类,仅按文章标题排序,方便关键字查找.本部分内容将至少以周为单位定期更新,可能不包含发布 ...
- 第9章 Python文件操作目录
第9章 Python文件操作 第9.1节 Python的文件打开函数open简介 第9.2节 Python的文件打开函数open详解 第9.3节 Python的文件行读取:readline 第9.4节 ...
- Python异步IO --- 轻松管理10k+并发连接
前言 异步操作在计算机软硬件体系中是一个普遍概念,根源在于参与协作的各实体处理速度上有明显差异.软件开发中遇到的多数情况是CPU与IO的速度不匹配,所以异步IO存在于各种编程框架中,客户端比如浏览 ...
- Python文件IO
Python文件IO 有如下文本内容,文件路径为D:\temp,文件名称为lyric.txt, line1 Look ! line2 If U had one shot line3 One oppor ...
- python遍历一个目录,输出所有文件名
python遍历一个目录,输出所有文件名 python os模块 os import os def GetFileList(dir, fileList): newDir = dir if os. ...
随机推荐
- mybatis 框架 的简单使用
# Global logging configuration #在开发环境下日志级别要设置成DEBUG,生产环境设置成info或error log4j.rootLogger=DEBUG, stdout ...
- DBMS ODBC JDBC是什么?
昨天躺在被窝里面看了几页电子书,今天写下来. 数据库就是存放数据的仓库. DBMS的意思是数据库管理系统,作用就是“管理”数据库的.“管理”这两个字简单说来就是“增删改查”.所以DBMS就是能够对数据 ...
- 第十三课 Actionlib(2)
上节课讲到了客户端,这节课讲解一下服务器 1.创建服务器源文件touch fibonacciserver.cpp 2.编写源文件 3.修改CMakeLists.txt 4.编译之catkin_make ...
- Entity Framework 6.0 Tutorials(9):Stored Procedure Mapping
Code First - Insert, Update, Delete Stored Procedure Mapping: Entity Framework 6 Code-First provides ...
- Java 并行和并发
并行:指两个或多个事件在同一时刻点进行. 并发:指两个或多个事件在同一时间段进行.
- ParameterizedType的作用
public interface ParameterizedType extends Type subParam.Java package com.example.test; public clas ...
- POJ - 3984 迷宫问题 BFS求具体路径坐标
迷宫问题 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, ...
- HTML5移动开发即学即用(双色) 王志刚 pdf扫描版
HTML5已经广泛应用于各智能移动终端设备上,而且绝大部分技术已经被各种最新版本的测览器所支持:逐一剖析HTML5标准中包含的最新技术,详细介绍了HTML5新标准中提供的各种API,各种各样的应用实例 ...
- IOS GPS跟踪备注
CLLocationManager还提供了如下类方法来判断当前设备的定位相关服务状态. Ø + locationServicesEnabled:返回当前定位服务是否可用. Ø + deferredLo ...
- System.Net.Http
System.Net.Http DotNet菜园 占个位置^-^ 2018-11-10 09:55:00修改 这个HttpClient的学习笔记一直迟迟未记录,只引用了其他博主的博客链接占个位置,但被 ...