Python温习(二) —— IO读取
基础知识
1、PyCharm Tips 快捷键
@ run 快捷键 Ctrl + Shift + F10
查看系统类型
import os
s = os.name
print(s)
# 输出为posix,说明系统是Linux、Unix或Mac OS X;
# 输出若是nt,则是Windows系统
# 如果需要获取详细的系统信息,可以调用uname()函数
# 注意:uname()函数在Windows上不提供.
# os.uname()
2、操作文件和目录
操作文件和目录的函数一部分放在os模块中,一部分放在os.path模块中,
shutil模块提供了copyfile()即文件复制的函数,在shutil模块中可以找到很多实用函数,它们可以看做是os模块的补充
2.1 查看当前目录的绝对路径
import os
s = os.path.abspath('.')
print(s)
# Output:
# >>> G:\Python_programing\IO
2.2 在某个目录下创建一个新目录
-
①首先把新目录的完整路径表示出来:
import os
s = os.path.join(r'G:\Python_programing\IO', 'Newdir')
print(s)
# Output:
# >>> G:\Python_programing\IO\Newdir
-
②然后创建一个目录:
import os
os.mkdir(r'G:\Python_programing\IO\Rdir') # mkdir 即 make directory
2.3 删掉一个目录
import os
os.rmdir(r'G:\Python_programing\IO\Rdir') # rmdir 即 remove directory
3、合并路径
把两个路径合成一个时,不要直接拼字符串,而要通过os.path.join()函数,这样可以正确处理不同操作系统的路径分隔符
- 在Linux/Unix/Mac下,os.path.join()返回字符串: part-1/part-2
- 在Windows下,os.path.join()返回字符串: part-1\part-2
4、拆分路径
在一个路径拆分时,也不要直接去拆字符串,而要通过os.path.split()函数,这样可以把一个路径拆分为两部分,后一部分总是最后级别的目录或文件名
import os
s = os.path.split(r'G:\Python_programing\IO\test.txt')
print(s)
# Output:
# >>> ('G:\\Python_programing\\IO', 'test.txt')
5、获取文件扩展名
import os
s = os.path.splitext(r'G:\Python_programing\IO\test.txt')
print(s)
# Output:
# >>> ('G:\\Python_programing\\IO\\test', '.txt')
-
合并、拆分路径的函数并不要求目录和文件要真实存在,
函数只对字符串进行操作
6、重命名文件
import os
os.rename('readme.md', '文件读写.md')
7、删除文件
import os
os.remove('one.txt')
应用
利用Python的特性来过滤文件
8、列出当前目录下的所有目录
import os
s = [x for x in os.listdir('.') if os.path.isdir(x)]
print(s)
# Output:
# >>> []
9、列出所有的.py文件
import os
s = [x for x in os.listdir('.') if os.path.isfile(x) and os.path.splitext(x)[1]=='.py']
print(s)
# Output:
# >>> ['main.py']

浙公网安备 33010602011771号