PHP
Python

Trang chủ

Các cách đổi tên và xóa file trong Python chi tiết

Ngôn ngữ Python là một ngôn ngữ lập trình đa mục đích, nổi tiếng với cú pháp dễ đọc, dễ học và tính ứng dụng cao. Trong lĩnh vực phát triển web, Python thường được sử dụng thông qua các framework như Django và Flask để xây dựng các ứng dụng web mạnh mẽ, bảo mật và dễ mở rộng. Trong chuyên mục này, Vietnix không chỉ cung cấp kiến thức nền tảng về ngôn ngữ Python mà còn hướng dẫn chi tiết cách xây dựng các ứng dụng web thực tế, sử dụng các framework phổ biến và áp dụng các kỹ thuật tiên tiến. Vietnix cam kết liên tục cập nhật những bài viết mới nhất về các tính năng mới của Python, các thư viện hỗ trợ hữu ích và những phương pháp tốt nhất, giúp bạn khai thác tối đa sức mạnh của Python và hoàn thiện kỹ năng lập trình web của mình.
html
CSS
javascript
sql
python
php
c
c++
bootstrap
react
mysql
reactjs
vuejs
Javascript Tutorials
07/03/2025
12 phút đọc
Theo dõi Vietnix trên

Các cách đổi tên và xóa file trong Python chi tiết

Trong Python, bạn có thể đổi tên và xóa file bằng cách sử dụng các hàm tích hợp sẵn từ mô-đun os. Đây là những thao tác quan trọng giúp quản lý dữ liệu, tự động hóa quy trình làm việc và tối ưu hóa mã nguồn. Trong bài viết này, mình sẽ hướng dẫn bạn cách đổi tên và xóa file trong Python một cách chi tiết. Đồng thời, bạn cũng sẽ biết cách thao tác trên nhiều file cùng lúc và xử lý lỗi để đảm bảo chương trình luôn hoạt động ổn định.

Điểm chính cần nắm

  • Điểm chính cần nắm: Tổng quan về cách đổi tên và xóa file trong Python, giúp bạn quản lý dữ liệu hiệu quả.
  • Đổi tên file trong Python: Sử dụng hàm os.rename() để thay đổi tên file một cách đơn giản và nhanh chóng.
  • Cách xóa file trong Python: Dùng hàm os.remove() để xóa file trong hệ thống một cách an toàn.
  • Đổi tên/Xóa nhiều file cùng lúc:
    • Đổi tên nhiều file cùng lúc: Sử dụng vòng lặp và os.rename() để thay đổi tên hàng loạt file.
    • Xóa nhiều file cùng lúc: Dùng os.remove() trong vòng lặp để tự động xóa nhiều file.
    • Lưu ý khi đổi tên/xóa nhiều file: Kiểm tra sự tồn tại của file, tránh lỗi ảnh hưởng đến chương trình.
  • Xử lý lỗi với try-except để chương trình không bị dừng đột ngột:
    • Xử lý lỗi khi đổi tên file: Sử dụng try-except để xử lý lỗi khi đổi tên file không tồn tại hoặc bị khóa.
    • Xử lý lỗi khi xóa file: Kiểm tra sự tồn tại của file trước khi xóa để tránh lỗi chương trình.
    • Kết quả: Giúp chương trình chạy ổn định, tránh gián đoạn do lỗi thao tác file.
  • Vietnix – Giải pháp lưu trữ tốc độ cao, bảo mật vượt trội: Nhà cung cấp dịch vụ máy chủ, hosting, VPS uy tín, giúp tối ưu hóa hiệu suất và bảo mật dữ liệu.
Các cách đổi tên và xóa file trong Python chi tiết
Các cách đổi tên và xóa file trong Python chi tiết

Đổi tên file trong Python

Để đổi tên file, bạn có thể sử dụng hàm os.rename(). Hàm này nhận vào hai tham số: tên file hiện tại và tên file mới.

Cú pháp:

os.rename(current_file_name, new_file_name)

# Tham số
# current_file_name: Tên file hiện tại.
# new_file_name: Tên file mới sau khi đổi.

Ví dụ: Mình sẽ thực hiện minh họa cách đổi tên file từ “vietnix_old.txt” thành “vietnix_new.txt” sử dụng hàm rename().

import os

# Tên file hiện tại
current_name = "vietnix_old.txt"

# Tên file mới
new_name = "vietnix_new.txt"

# Đổi tên file
os.rename(current_name, new_name)

print(f"File '{current_name}' đã được đổi tên thành '{new_name}' thành công.")

Kết quả:

File ‘vietnix_old.txt’ đã được đổi tên thành ‘vietnix_new.txt’ thành công.

Lưu ý:

  • Nếu file không tồn tại, chương trình sẽ báo lỗi FileNotFoundError.
  • Nếu file mới đã tồn tại, nó sẽ bị ghi đè mà không có cảnh báo.
  • Bạn có thể kiểm tra file trước khi đổi tên bằng os.path.exists()
# Cách kiểm tra file trước khi đổi tên

if os.path.exists(current_name):
    os.rename(current_name, new_name)
    print("Đổi tên thành công.")
else:
    print("File không tồn tại.")

Cách xóa file trong Python

Bạn có thể xóa file bằng cách sử dụng hàm os.remove(). Hàm này sẽ xóa file được chỉ định theo tên.

Cú pháp:

os.remove(file_name)

# Tham số
# file_name: Tên file cần xóa.

Ví dụ: Mình sẽ thực hiện ví dụ để xóa file hiện có với tên vietnix_temp.txt bằng hàm remove().

import os

# Tên file cần xóa
file_to_delete = "vietnix_temp.txt"

# Xóa file
os.remove(file_to_delete)

print(f"File '{file_to_delete}' đã được xóa thành công.")

Kết quả:

File ‘vietnix_temp.txt’ đã được xóa thành công.

Lưu ý:

  • Nếu file không tồn tại, chương trình sẽ báo lỗi FileNotFoundError.
  • Để tránh lỗi, bạn có thể kiểm tra trước khi xóa:
# Cách kiểm tra file trước khi xóa

if os.path.exists(file_to_delete):
    os.remove(file_to_delete)
    print("Xóa file thành công.")
else:
    print("File không tồn tại.")

Mọi người cũng xem:

Đổi tên/Xóa nhiều file cùng lúc

Trong một số trường hợp, bạn cần đổi tên hoặc xóa nhiều file cùng lúc thay vì thao tác từng file một. Bạn có thể sử dụng vòng lặp để duyệt qua danh sách file cần xử lý.

Đổi tên nhiều file cùng lúc

Dưới đây là ví dụ đổi tên nhiều file có tiền tố vietnix_old_ thành vietnix_new_:

import os

# Danh sách file cần đổi tên
file_list = ["vietnix_old_1.txt", "vietnix_old_2.txt", "vietnix_old_3.txt"]

# Đổi tên từng file
for file_name in file_list:
    new_name = file_name.replace("vietnix_old_", "vietnix_new_")
    if os.path.exists(file_name):
        os.rename(file_name, new_name)
        print(f"Đã đổi tên {file_name} thành {new_name}")
    else:
        print(f"File {file_name} không tồn tại.")

Kết quả:

Giả sử thư mục của bạn có các file: vietnix_old_1.txt, vietnix_old_2.txt, vietnix_old_3.txt.

Đã đổi tên vietnix_old_1.txt thành vietnix_new_1.txt
Đã đổi tên vietnix_old_2.txt thành vietnix_new_2.txt
Đã đổi tên vietnix_old_3.txt thành vietnix_new_3.txt

Nếu một file không tồn tại, chương trình sẽ báo:

File vietnix_old_2.txt không tồn tại.

Xóa nhiều file cùng lúc

Tương tự, bạn có thể xóa nhiều file bằng cách duyệt qua danh sách file cần xóa:

import os

# Danh sách file cần xóa
files_to_delete = ["vietnix_temp_1.txt", "vietnix_temp_2.txt", "vietnix_temp_3.txt"]

# Xóa từng file
for file_name in files_to_delete:
    if os.path.exists(file_name):
        os.remove(file_name)
        print(f"Đã xóa {file_name}")
    else:
        print(f"File {file_name} không tồn tại.")

Kết quả:

Giả sử thư mục của bạn có các file: vietnix_temp_1.txt, vietnix_temp_2.txt, vietnix_temp_3.txt.

Đã xóa vietnix_temp_1.txt
Đã xóa vietnix_temp_2.txt
Đã xóa vietnix_temp_3.txt

Nếu một file không tồn tại, chương trình sẽ báo:

File vietnix_temp_3.txt không tồn tại.

Lưu ý khi đổi tên/xóa nhiều file

  • Luôn kiểm tra file có tồn tại trước khi thực hiện thao tác.
  • Nếu làm việc với số lượng file lớn, bạn có thể sử dụng thư viện glob để lọc danh sách file theo mẫu (ví dụ: tất cả file .txt).
  • Khi đổi tên file theo quy tắc, hãy đảm bảo không đặt tên trùng lặp gây lỗi.

Xử lý lỗi với try-except để chương trình không bị dừng đột ngột

Khi thao tác với file trong Python, nếu file không tồn tại hoặc có lỗi trong quá trình đổi tên/xóa, chương trình có thể bị dừng đột ngột. Để tránh tình trạng này, bạn có thể sử dụng khối try-except để xử lý lỗi một cách an toàn.

Xử lý lỗi khi đổi tên file

Dưới đây là cách đổi tên file với xử lý lỗi:

import os

current_name = "vietnix_old.txt"
new_name = "vietnix_new.txt"

try:
    os.rename(current_name, new_name)
    print(f"File '{current_name}' đã được đổi tên thành '{new_name}' thành công.")
except FileNotFoundError:
    print(f"Lỗi: File '{current_name}' không tồn tại.")
except PermissionError:
    print(f"Lỗi: Không có quyền đổi tên file '{current_name}'.")
except Exception as e:
    print(f"Lỗi không xác định: {e}")

Xử lý lỗi khi xóa file

Tương tự, khi xóa file, bạn nên bắt lỗi để tránh chương trình bị gián đoạn:

import os

file_to_delete = "vietnix_temp.txt"

try:
    os.remove(file_to_delete)
    print(f"File '{file_to_delete}' đã được xóa thành công.")
except FileNotFoundError:
    print(f"Lỗi: File '{file_to_delete}' không tồn tại.")
except PermissionError:
    print(f"Lỗi: Không có quyền xóa file '{file_to_delete}'.")
except Exception as e:
    print(f"Lỗi không xác định: {e}")

Kết quả

Trường hợp thành công:

File 'vietnix_old.txt' đã được đổi tên thành 'vietnix_new.txt' thành công.

Hoặc:

File 'vietnix_temp.txt' đã được xóa thành công.

Trường hợp file không tồn tại:

Lỗi: File 'vietnix_old.txt' không tồn tại.

Trường hợp không có quyền thao tác:

Lỗi: Không có quyền đổi tên file 'vietnix_old.txt'. 

Vietnix – Giải pháp lưu trữ tốc độ cao, bảo mật vượt trội

Vietnix là nhà cung cấp dịch vụ thuê máy chủ (server), hosting, VPSdomain hàng đầu tại Việt Nam, mang đến giải pháp lưu trữ mạnh mẽ, an toàn và tối ưu cho cá nhân, doanh nghiệp. Với hơn 12 năm kinh nghiệm, Vietnix không ngừng nâng cao chất lượng dịch vụ, đảm bảo hiệu suất cao, bảo mật chặt chẽ cùng đội ngũ hỗ trợ kỹ thuật chuyên nghiệp 24/7.

Hơn 80.000 khách hàng đã tin tưởng sử dụng dịch vụ của Vietnix, nhờ vào hệ thống hạ tầng mạnh mẽ, chính sách chăm sóc khách hàng tận tâm và các giải pháp tối ưu hóa chi phí. Dù bạn là cá nhân hay doanh nghiệp, Vietnix luôn sẵn sàng đồng hành, giúp bạn vận hành website, ứng dụng một cách ổn định, an toàn và hiệu quả.

Thông tin liên hệ:

  • Website: https://vietnix.vn/
  • Hotline: 18001093
  • Email: sales@vietnix.com.vn
  • Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh.

Câu hỏi thường gặp

Có thể khôi phục file sau khi đã xóa bằng os.remove() không?

Không, os.remove() xóa file vĩnh viễn. Nếu cần khôi phục, bạn có thể di chuyển file vào thư mục “thùng rác” thay vì xóa trực tiếp bằng thư viện send2trash.

Hai hàm này hoạt động giống nhau, đều dùng để xóa file. os.unlink() chỉ là một tên gọi khác của os.remove() trong Python.

Có thể đổi tên file mà không thay đổi phần mở rộng (đuôi file) không?

Có, bạn có thể tách tên file và phần mở rộng bằng os.path.splitext() trước khi đổi tên, ví dụ: python

import os
file_name = “vietnix_old.txt”
name, ext = os.path.splitext(file_name)
new_name = name + “_new” + ext
os.rename(file_name, new_name)

Làm sao để đổi tên hoặc xóa file có dấu cách hoặc ký tự đặc biệt trong tên?

Khi thao tác với file có dấu cách hoặc ký tự đặc biệt, bạn chỉ cần đảm bảo đặt tên file trong dấu nháy (" hoặc ') đúng cách, hoặc dùng r"tên_file" để tránh lỗi escape sequence.

Có thể đổi tên file theo số thứ tự tự động không?

Có, bạn có thể sử dụng vòng lặp và enumerate() để đổi tên hàng loạt file theo số thứ tự, ví dụ: python

import os
folder = “vietnix_files”
for index, file in enumerate(os.listdir(folder), start=1):
old_path = os.path.join(folder, file)
new_path = os.path.join(folder, f”file_{index}.txt”)
os.rename(old_path, new_path)

Làm thế nào để xóa tất cả file trong một thư mục?

Bạn có thể dùng vòng lặp để duyệt qua tất cả các file trong thư mục và xóa chúng bằng os.remove(). Nếu muốn xóa cả thư mục, dùng shutil.rmtree().

Có cách nào đổi tên/xóa file mà không gây lỗi nếu file không tồn tại không?

Có, bạn có thể kết hợp os.path.exists() với try-except để tránh lỗi khi file không tồn tại.

Lời kết

Việc đổi tên và xóa file trong Python không chỉ giúp bạn làm việc với dữ liệu linh hoạt hơn mà còn hỗ trợ tự động hóa nhiều tác vụ quan trọng. Bằng cách áp dụng những kỹ thuật trên, bạn có thể tránh được các lỗi phổ biến và đảm bảo chương trình luôn hoạt động ổn định. Nếu bạn có bất cứ thắc mắc hay cần hỗ trợ gì, hãy để lại bình luận bên dưới, mình sẽ hỗ trợ nhanh nhất. Cảm ơn bạn đã đọc!

Cao Lê Viết Tiến

PHP Leader
tại
Vietnix

Kết nối với mình qua

Icon Quote
Icon Quote

Học lập trình online cùng vietnix

Học lập trình online cùng Vietnix

PHPXem thêmThu gọn