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']

References: https://www.liaoxuefeng.com/wiki/1016959663602400

posted @ 2021-05-23 11:09  win-z  阅读(145)  评论(0)    收藏  举报