更多Python学习内容:ipengtao.com
Python是一门强大的编程语言,具有丰富的标准库,其中包括os
和sys
两个常用模块。os
模块用于与操作系统交互,提供了许多文件和目录操作的方法,而sys
模块用于与Python解释器进行交互,提供了对命令行参数和系统配置的访问。本文将汇总os
和sys
模块的常用方法,并提供详细的示例代码。
使用os.getcwd()
方法可以获取当前Python脚本的工作目录。这对于构建相对路径非常有用。
import?os
current_directory?=?os.getcwd()
print("当前工作目录:",?current_directory)
使用os.chdir(path)
方法可以更改当前工作目录到指定的路径。
import?os
os.chdir("/path/to/new/directory")
使用os.listdir(path)
方法可以列出指定目录中的文件和子目录。
import?os
directory_contents?=?os.listdir("/path/to/directory")
print("目录内容:",?directory_contents)
使用os.mkdir(path)
方法可以创建一个新目录。
import?os
os.mkdir("/path/to/new/directory")
使用os.makedirs(path)
方法可以递归创建多级目录,如果父级目录不存在也会创建。
import?os
os.makedirs("/path/to/new/directory")
使用os.remove(file)
方法可以删除文件,使用os.rmdir(directory)
方法可以删除目录,但前提是目录必须为空。如果要删除目录及其内容,可以使用shutil.rmtree(path)
方法。
import?os
import?shutil
os.remove("/path/to/file")
os.rmdir("/path/to/empty/directory")
shutil.rmtree("/path/to/directory/with/contents")
使用os.rename(src, dst)
方法可以重命名文件或目录。
import?os
os.rename("/path/to/old/file",?"/path/to/new/file")
使用os.path.exists(path)
方法可以检查文件或目录是否存在。
import?os
if?os.path.exists("/path/to/file_or_directory"):
????print("文件或目录存在")
else:
????print("文件或目录不存在")
使用os.path.getsize(file)
方法可以获取文件的大小(以字节为单位)。
import?os
file_size?=?os.path.getsize("/path/to/file")
print("文件大小(字节):",?file_size)
使用os.path.isfile(path)
方法可以检查路径是否为文件,使用os.path.isdir(path)
方法可以检查路径是否为目录。
import?os
if?os.path.isfile("/path/to/file"):
????print("是文件")
elif?os.path.isdir("/path/to/directory"):
????print("是目录")
使用os.path.join(path1, path2, ...)
方法可以拼接路径,以适应不同操作系统的路径分隔符。
import?os
path?=?os.path.join("/path/to",?"directory",?"file.txt")
print("拼接后的路径:",?path)
使用sys.argv
列表可以获取命令行参数,其中sys.argv[0]
是脚本名称,后续元素是传递给脚本的参数。
import?sys
script_name?=?sys.argv[0]
arguments?=?sys.argv[1:]
print("脚本名称:",?script_name)
print("参数:",?arguments)
使用sys.exit(code)
方法可以退出脚本,并可选地指定退出代码。退出代码为0表示正常退出,其他值表示出现错误。
import?sys
#?正常退出
sys.exit(0)
#?带有错误退出代码
sys.exit(1)
使用sys.version
可以获取Python解释器的版本信息。
import?sys
python_version?=?sys.version
print("Python版本:",?python_version)
使用sys.setdefaultencoding(encoding)
方法可以修改Python的默认字符编码。
import?sys
#?修改默认编码为UTF-8
reload(sys)
sys.setdefaultencoding('utf-8')
使用sys.getrecursionlimit()
方法可以获取Python解释器的最大递归深度。
import?sys
recursion_limit?=?sys.getrecursionlimit()
print("最大递归深度:",?recursion_limit)
使用sys.setrecursionlimit(limit)
方法可以设置Python解释器的最大递归深度。请注意,更改递归深度可能导致Python解释器不稳定,因此要谨慎使用。
import?sys
#?设置最大递归深度为10000
sys.setrecursionlimit(10000)
使用sys.byteorder
可以获取系统的字节序,返回值为"little"(小端字节序)或"big"(大端字节序)。
import?sys
byte_order?=?sys.byteorder
print("字节序:",?byte_order)
使用sys.platform
可以获取操作系统的名称。例如,Windows系统返回"win32",Linux系统返回"linux"。
import?sys
platform?=?sys.platform
print("操作系统:",?platform)
os
和sys
模块提供了丰富的方法,用于与操作系统和Python解释器进行交互。本文汇总了这两个模块的常用方法,包括获取当前工作目录、文件操作、路径操作、命令行参数处理等等。这些方法在编写文件操作、系统管理和命令行工具时非常有用。通过充分利用os
和sys
模块,可以更轻松地处理各种系统和环境相关的任务,提高Python编程的效率和便捷性。
如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!
更多Python学习内容:ipengtao.com
干货笔记整理
最经典的编程教材《Think Python》开源中文版.PDF下载
点击“阅读原文”,获取更多学习内容