WhaleData - Task01 文件处理与邮件自动化

这篇博客详细介绍了Python中的文件处理,包括文件路径、工作目录、路径操作、文件及文件夹操作,以及如何使用os和shutil模块进行文件读写、移动、改名和删除。此外,还讲解了文件压缩和查找文件的技巧,如使用zipfile模块创建zip文件,以及glob和fnmatch模块进行文件匹配。内容适合于提升Python在大数据处理中的文件操作技能。
摘要由CSDN通过智能技术生成

1.1 文件处理

1.1.1 文件与文件路径

文件的两个属性:“路径”和“文件名”,

路径指明文件在计算机上的位置,

文件名是指该位置的文件的名称。

---------------------------------------------------------------------------------------------------------------------------------

例子:

在我的桌面上有一个名为“大肚腩+高内脏脂肪用整.mp4”的文件。

它的路径在"C:\Users\大肚腩+高内脏脂肪用整.mp4"

在windows中,路径中的C:\部分是“根文件夹”,Users是文件夹名。

注:Windows中文件夹名和文件名不区分大小写的。

在windows上,路径书写是使用倒斜杠''作为文件夹之间的分隔符,而在OS X和Linux上,是使用正斜杠'/'作为它们的路径分隔符。通常我们用os.path.join()函数来创建文件名称字符串。

os模块详细可参考:https://www.cnblogs.com/ltkekeli1229/p/15709442.html

(转)

1.1.2 当前工作目录

每个运行在计算机上的程序,都有一个“当前工作目录”。利用os.getcwd()函数,可以取得当前工作路径的字符串,并可以利用os.chdir()改变它。

import os

print(os.getcwd()) 
#C:\Users\Public\PycharmProjects\pythonProject\WhaleData - 办公软件实战

os.chdir(r"C:\Users")
print(os.getcwd())
#C:\Users

1.1.3 路径操作

1.1.3.1 绝对路径和相对路径

 “绝对路径”,总是从根文件夹开始。

“相对路径”,相对于程序的当前工作目录。

相对路径中,单个句点“.”表示当前目录的缩写,两个句点“..”表示父文件夹。

几个常用的绝对路径和相对路径处理函数

  • os.path.abspath(path):将相对路径转换为绝对路径,将返回参数的绝对路径的字符串。

  • os.path.isabs(path):判断是否是绝对路径,是返回True,不是则返回False

1.1.3.2 路径操作

  • os.path.relpath(path,start):返回从start路径到path的相对路径的字符串。如果没提供start,就使用当前工作目录作为开始路径。

  • os.path.dirname(path): 返回当前路径的目录名称。

  • os.path.basename(path):返回当前路径的文件名称。

  • path = os.getcwd()
    print(path)
    #C:\Users\Public\PycharmProjects\pythonProject\WhaleData - 办公软件实战
    
    print(os.path.relpath(path, 'c:\\'))
    #Users\Public\PycharmProjects\pythonProject\WhaleData - 办公软件实战
    
    
    path = r'C:\Users\Public\Desktop\大肚腩+高内脏脂肪用整.mp4'
    print('当前路径的目录名称: %s \n'
          '当前路径的文件名称: %s'
          % (os.path.dirname(path), os.path.basename(path)))
    #
    当前路径的目录名称: C:\Users\Public\Desktop 
    当前路径的文件名称: 大肚腩+高内脏脂肪用整.mp4
    如果同时需要一个路径的目录名称和基本名称,可以调用os.path.split(),获得者两个字符串的元组。
    
    
    path = r'C:\Users\Public\Desktop\大肚腩+高内脏脂肪用整.mp4'
    print(os.path.split(path))
    
    #('C:\\Users\\Public\\Desktop', '大肚腩+高内脏脂肪用整.mp4')

    如果我们想返回每个文件夹的字符串的列表。用os.path.split()无法得到,我们可以用split()字符串方法,并根据os.path.sep 中的字符串进行分割。os.path.sep 变量设置为正确的文件夹分割斜杠。

path = r'C:\Users\Public\Desktop\大肚腩+高内脏脂肪用整.mp4'
print(path.split(os.path.sep)

#['C:', 'Users', 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值