百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python基础04-操作系统中的文件与目录操作

off999 2024-09-20 22:55 54 浏览 0 评论

在与操作系统交互时,我们经常需要执行文件和目录的操作。Python提供了丰富的库来帮助我们完成这些任务。以下是一些常见的操作,以及如何使用Python代码来实现它们。

1. 导航文件路径

在不同的操作系统中,文件路径的格式可能不同。Python的os.path模块可以帮助我们创建与操作系统兼容的路径。

import os
# 创建一个与底层操作系统兼容的路径
path = os.path.join('mystic', 'forest', 'artifact.txt')
# 获取该路径所在的目录
directory = os.path.dirname(path)
# 揭示文件的名称
artifact_name = os.path.basename(path)

2. 列出目录内容

要查看一个目录下的所有文件和子目录,可以使用os.listdir

import os
# 列出'enchanted_grove'目录下的所有内容
contents = os.listdir('enchanted_grove')
print(contents)

3. 创建目录

使用os.mkdir可以创建单个目录,而os.makedirs可以创建多级目录。

import os
# 创建一个名为'alchemy_lab'的目录
os.mkdir('alchemy_lab')
# 创建一个包含多个子目录的路径
os.makedirs('alchemy_lab/potions/elixirs')

4. 删除文件和目录

删除文件或目录可以使用os.removeos.rmdirshutil.rmtree

import os
import shutil
# 删除一个名为'unnecessary_scroll.txt'的文件
os.remove('unnecessary_scroll.txt')
# 删除一个空的目录'abandoned_hut'
os.rmdir('abandoned_hut')
# 删除一个目录及其所有内容,包括子目录
shutil.rmtree('cursed_cavern')

5. 执行Shell命令

通过subprocess模块,我们可以在Python中执行Shell命令。

import subprocess
# 执行'echo'命令并捕获输出
result = subprocess.run(['echo', 'Revealing the arcane'], capture_output=True, text=True)
print(result.stdout)

6. 处理环境变量

os.environ是一个字典,它包含了环境变量。

import os
# 读取'PATH'环境变量
path = os.environ.get('PATH')
# 创建一个新的环境变量
os.environ['MAGIC'] = 'Arcane'

7. 更改当前工作目录

使用os.chdir可以改变当前工作目录。

import os
# 切换到'arcane_library'目录
os.chdir('arcane_library')

8. 检查路径存在性及类型

os.path.existsos.path.isdiros.path.isfile可以帮助我们检查路径的存在性及其类型。

import os
# 检查'mysterious_ruins'路径是否存在
exists = os.path.exists('mysterious_ruins')
# 判断'mysterious_ruins'是否是目录
is_directory = os.path.isdir('mysterious_ruins')
# 确定'ancient_manuscript.txt'是否是文件
is_file = os.path.isfile('ancient_manuscript.txt')

9. 使用临时文件和目录

tempfile模块提供了创建临时文件和目录的功能。

import tempfile
# 创建一个临时文件,并指定不自动删除
temp_file = tempfile.NamedTemporaryFile(delete=False)
print(temp_file.name)
# 创建一个临时目录
temp_dir = tempfile.TemporaryDirectory()
print(temp_dir.name)

10. 获取系统信息

通过osplatform模块,我们可以获取操作系统的名称和详细信息。

import os
import platform
# 获取操作系统的名称,如'posix', 'nt', 'java'
os_name = os.name
# 获取详细的系统信息,如'Linux', 'Windows', 'Darwin'
system_info = platform.system()

11. 文件权限和属性

os.chmod可以用来改变文件的权限,而os.stat可以获取文件的属性。

import os
# 更改文件权限,这里设置为可读写
os.chmod('spell_book.txt', 0o644)
# 获取文件属性
file_stats = os.stat('spell_book.txt')
print(file_stats)

12. 文件复制和移动

shutil.copyshutil.move分别用于复制和移动文件。

import shutil
# 复制文件
shutil.copy('spell_book.txt', 'backup_spell_book.txt')
# 移动文件
shutil.move('backup_spell_book.txt', 'ancient_tome.txt')

13. 文件比较

filecmp模块可以用来比较两个文件是否相同。

import filecmp
# 比较两个文件是否相同
is_same = filecmp.cmp('spell_book.txt', 'ancient_tome.txt')
print(is_same)

14. 文件锁定

fcntl模块(在UNIX系统上)可以用于锁定文件。

import fcntl
import os
# 锁定文件,以防止其他进程同时修改
with open('grimoire.txt', 'w') as f:
    fcntl.lockf(f, fcntl.LOCK_EX)
    # 进行文件操作
    f.write('Secret incantations')
    # 解锁文件
    fcntl.lockf(f, fcntl.LOCK_UN)

15. 符号链接和硬链接

os.symlinkos.link分别用于创建符号链接和硬链接。

import os
# 创建一个指向'grimoire.txt'的符号链接
os.symlink('grimoire.txt', 'grimoire_link.txt')
# 创建一个硬链接
os.link('grimoire.txt', 'grimoire_hardlink.txt')

通过这些操作,我们可以在Python中高效地管理文件系统。这些操作覆盖了文件和目录管理的大部分基本需求,无论是在脚本编写还是应用程序开发中都非常有用。





civilpy:Python数据分析及可视化实例目录944 赞同 · 36 评论文章

相关推荐

路由器重置方法(路由器重置方法详细步骤)

路由器靠近WAN口边上的有一个小孔用于路由器的重置,路由器配置完成后,我们可能会忘记他的用户名或者是密码,那么我们可以把它恢复到出厂设置,再靠近万口或电源之间,有一个小孔,用一个尖锐的金属查一下大约五...

100个有效qq号以及密码(有效qq号和密码大全)

如果你的电脑知识好的话,不妨用一些复合密码!SHIFT+一些特殊符号,字母,数字!虽然麻烦了点,但总比被人盗号了的好,是吧!最好还用手机绑定一下,这样的话方便改密码也不怕QQ被盗了哦。。。QQ密码找回...

win10家庭中文版下载官网(windows10家庭中文版下载)

你好,激活Win10家庭中文版的方法:1.购买正版Win10家庭中文版激活码,然后在计算机上输入激活码,即可完成激活。2.如果您已经安装了Win10家庭中文版,但尚未激活,可以通过以下步骤激活:-...

电脑截图在哪里找(电脑截图在哪里找图片win10)

截图默认会保存在电脑的剪贴板中,可以通过以下步骤将其保存到本地:1.打开任意一款图片软件,如Paint、Photoshop、Word等。2.按下键盘上的Ctrl+V,或者在软件菜单栏中选择&#...

电脑里一堆microsoft visual

按照系统向下兼容原理,保留2010就可以了.1)你安装的时候是不是把创建快捷键的选项框都没选上,导致在开始菜单中没有找到相应的链接?2)去你的安装目录下,找到Microsoftvisualc++...

windows无法识别usb(windows无法识别usb设备)
windows无法识别usb(windows无法识别usb设备)

Windows无法识别USB,解决办法如下右键开始菜单打开设备管理器,在通用串行总线控制器中右键点击设备选择“卸载”,完成后重新启动计算机即可解决问题。这有可能是在组策略中禁用了USB口,可以使用快捷键【Win+R】运行gpedit.msc...

2025-11-10 11:51 off999

bios能看到硬盘 开机找不到硬盘

bios里可以看到硬盘,说明硬盘已经被主板识别。进系统找不到,可能硬盘没分区,或者硬盘是动态磁盘,还没有导入或激活。按win+r,输入diskmgmt.msc回车,就打开磁盘管理了,在里面可以给新硬盘...

找回qq聊天记录的方法(找回qq聊天记录怎么找)
  • 找回qq聊天记录的方法(找回qq聊天记录怎么找)
  • 找回qq聊天记录的方法(找回qq聊天记录怎么找)
  • 找回qq聊天记录的方法(找回qq聊天记录怎么找)
  • 找回qq聊天记录的方法(找回qq聊天记录怎么找)
无线网有个红叉(无线网有个红叉,搜索不到网络)

连接失败,路由坏换路由,外网坏,报修无线网络处出现红叉表示设备无法正常工作。请检查网卡驱动是否正常,无线网络开关是否打开。解决方法:查看电脑是否有无线网络开关,且是否打开。进入设备管理器检查网卡驱动是...

thinkpad笔记本官网首页(thinkpad官方商城)

官方网站 国内:http://www.thinkworld.com.cn   国内用户只需要访问国内即可。  ThinkPad,中文名为“思考本”,在2005年以前是IBMPC事业部旗下的便携式计算机...

win7什么版本最好用(win7哪个版本最稳定流畅)

Windows7旗舰版,最好,最稳定。Windows7,是由微软公司(Microsoft)开发的操作系统,内核版本号为WindowsNT6.1。Windows7可供选择的版本有:简易版(Sta...

win7自带虚拟光驱怎么使用(win7系统虚拟光驱安装教程)

以DAEMONTools为例,360软件管家里面就有最新版的下.安装后使用方法如下:第一种方法:在虚拟光驱界面中,你先按一下中间工具栏最左边“+”符号的按钮,添加镜像文件(可以一次添加多个),这...

电脑装系统蓝屏(电脑装系统蓝屏重启开不了机)

蓝屏的原因往往集中在不兼容的硬件和驱动程序、有问题的软件、病毒等。解决办法:1、病毒的原因。使用电脑管家杀毒。2、内存的原因。用橡皮擦把内存条的金手指擦拭一下,把氧化层擦掉,确保内存条安装、运行正常。...

u盘安装软件(u盘安装软件到电视)

第一种情况:软件安装包可以直接下载的。在电脑上将软件安装包下载到本地硬盘,然后将下载好软件安装包拷贝到U盘上即可拿到别的电脑上去安装。分可为exe格式的和rar格式,exe格式直接安装,rar格式的解...

microsoft官网账户注册(microsoft 帐户注册)

要创建Microsoft账户,您可以按照以下步骤进行操作:1.打开任意一个支持浏览器的设备,如电脑、手机或平板电脑。2.在浏览器中输入"Microsoft账户注册"或直接访问Mic...

取消回复欢迎 发表评论: