當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python os.replace()用法及代碼示例


先決條件: Python中的OS模塊。

Python中的os.replace()方法用於重命名文件或目錄。如果目標是目錄,則將引發OSError。如果目標存在並且是文件,則在執行操作的用戶具有權限的情況下,它將被無錯誤地替換。如果源和目標位於不同的文件係統上,則此方法可能會失敗。

用法: os.replace(source, destination, *, src_dir_fd=None, dst_dir_fd=None2)

參數:

  • source:我們要重命名的文件或目錄的名稱。
  • destination:想在目的地給的名字。
  • src_dir_id:此參數存儲源目錄的或文件,
    引用目錄的文件描述符。
  • dst_dir_fd:它是指目錄的文件描述符,
    以及運營路徑。應該是相對的
    路徑將相對於該目錄。如果
    路徑是絕對的,dir_fd被忽略。

Return Type:此方法不返回任何值。



代碼1:使用os.replace()方法重命名文件。

Python3

# Python program to explain os.replace() method
 
# importing os module
import os
 
# file name
file = "f.txt"
 
# File location which to rename
location = "d.txt"
 
# Path
path = os.replace(file, location)
 
# renamed the file f.txt to d.txt
print("File %s is renamed successfully" % file)

輸出:

File f.txt is renamed successfully

代碼2:處理可能的錯誤。 (如果給出了必要的權限,則輸出將如下所示)

Python

# Python program to explain os.replace() method
 
# importing os module
import os
 
# Source file path
source = './file.txt'
 
# destination file path
dest = './da'
 
 
# try renaming the source path
# to destination path
# using os.rename() method
 
try:
    os.replace(source, dest)
    print("Source path renamed to destination path successfully.")
 
# If Source is a file
# but destination is a directory
except IsADirectoryError:
    print("Source is a file but destination is a directory.")
 
# If source is a directory
# but destination is a file
except NotADirectoryError:
    print("Source is a directory but destination is a file.")
 
# For permission related errors
except PermissionError:
    print("Operation not permitted.")
 
# For other errors
except OSError as error:

輸出:

Source is a file but destination is a directory.

相關用法


注:本文由純淨天空篩選整理自coder36大神的英文原創作品 Python – os.replace() method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。