Cách đổi tên file động trong python

Chọn một trang web để nhận nội dung đã dịch nếu có và xem các sự kiện và ưu đãi tại địa phương. Dựa trên vị trí của bạn, chúng tôi khuyên bạn nên chọn.

Bạn cũng có thể chọn một trang web từ danh sách sau

Làm thế nào để có được hiệu suất trang web tốt nhất

Chọn trang Trung Quốc [bằng tiếng Trung hoặc tiếng Anh] để có hiệu suất trang tốt nhất. Các trang web quốc gia khác của MathWorks không được tối ưu hóa cho các lượt truy cập từ vị trí của bạn

Bạn biết những báo cáo bán hàng mà bạn nhận được gửi hàng ngày?

Bạn có thể đổi tên từng cái một theo cách thủ công. Hoặc bạn có thể sử dụng phép thuật của Python

Trong bài đăng này, bạn sẽ học cách sử dụng thư viện pathlib để

  1. Đổi tên tệp dựa trên các mẫu và
  2. Sắp xếp các tệp vào các thư mục hợp lý

Nếu bạn muốn làm theo hướng dẫn bằng video, hãy xem video của tôi tại đây

Bắt đầu nào

Để tải các tệp mẫu mà tôi sẽ sử dụng trong suốt hướng dẫn này, bạn có thể tải xuống từ liên kết này. Chỉ cần giải nén chúng và đặt thư mục tệp ở bất cứ đâu bạn muốn

Bây giờ, hãy tải vào hai thư viện mà chúng tôi sẽ sử dụng

Chúng tôi sẽ sử dụng datetime để nắm bắt và chuyển đổi ngày tháng trong tên tệp của chúng tôi. Chúng tôi cũng sẽ sử dụng pathlib để đổi tên và di chuyển các tệp của chúng tôi vào các thư mục hợp lý

Pathlib của Python hoạt động như thế nào?

Python của ________ là một khung hướng đối tượng để làm việc và thao tác với các đường dẫn tệp. Nó được giới thiệu trong Python 3. 4, vì vậy bất kỳ phiên bản 3. 4 hoặc cao hơn sẽ hoạt động với hướng dẫn này

Pathlib cho phép chúng tôi tạo các đối tượng đường dẫn có nhiều thuộc tính và phương thức khác nhau mà chúng tôi có thể sử dụng để hiểu rõ hơn về tệp của mình hoặc thao tác với chúng

Hãy tạo một đối tượng đường dẫn và kiểm tra một số thuộc tính về đường dẫn đó. Tải thư mục bạn đã lưu trữ thư mục của mình vào biến our_files. [Ghi chú. nếu bạn đang sử dụng Windows, hãy biến chuỗi của bạn thành chuỗi thô để tránh thoát khỏi dấu gạch chéo ngược, bằng cách đặt một dấu gạch chéo ngược 8 trước chuỗi của bạn. ]

Những gì chúng ta đã làm với đoạn mã trên là tạo một đối tượng Path và gán nó cho một biến có tên là our_files. Lợi ích của việc này là bây giờ chúng ta có thể truy cập cả hai thuộc tính và áp dụng các phương thức cho đối tượng này

Ví dụ: chúng tôi đã kiểm tra xem đường dẫn đại diện cho một tệp [Sai] hay một thư mục [Đúng]. Chúng tôi cũng đã in ra đường dẫn gốc, gốc của đường dẫn và hậu tố [trong trường hợp này là trống]

Đổi tên tệp bằng Pathlib

Sử dụng cách tiếp cận hướng đối tượng mà Pathlib cung cấp, chúng ta có thể dễ dàng truy cập các thành phần của đường dẫn và thực hiện các sửa đổi

Phương thức East-Sales-01Jan2021.xlsx1 trả về một đối tượng trình tạo của tất cả các mục được lưu trữ trong thư mục đó. Hãy in ra các mục để đảm bảo rằng nó đang ghi lại các tệp của chúng tôi một cách chính xác

Lợi ích của việc này là bây giờ chúng ta có thể lặp lại và hành động trên từng tệp trong thư mục đó. Ngoài cách đó, hãy bắt đầu sửa đổi cấu trúc tên tệp của chúng tôi

Có một chút để giải nén ở đây, vì vậy hãy xem từng bước

  • Chúng tôi lặp lại từng tệp trong thư mục bằng phương thức East-Sales-01Jan2021.xlsx1
  • Sau đó, chúng tôi tạo hai biến hữu ích để lưu trữ thư mục và phần mở rộng của mỗi tệp trong
  • Chúng tôi giải nén tên tệp cũ của mình [được tạo bằng thuộc tính East-Sales-01Jan2021.xlsx3] thành các tên có ý nghĩa [khu vực, report_type và old_date]
  • Vì chúng tôi muốn thay đổi định dạng ngày, chúng tôi biến chuỗi ngày thành một đối tượng ngày giờ và sau đó trở lại thành một chuỗi với định dạng đầu ra mong muốn của chúng tôi. [Ghi chú. đầu tiên chúng tôi sử dụng East-Sales-01Jan2021.xlsx4 và sau đó là East-Sales-01Jan2021.xlsx5]
  • Cuối cùng, chúng tôi tạo một biến new_name sử dụng chuỗi f để nối các chuỗi khác của chúng tôi thành một tên tệp duy nhất. [nếu bạn in new_name ra thì nó sẽ như thế này. East-Sales-01Jan2021.xlsx6]
  • Để đổi tên các tệp, chúng tôi gọi phương thức East-Sales-01Jan2021.xlsx7 trên chính tệp đó, chuyển vào một nối của thư mục và tên mới

Phù. Được đấy, tuyệt vời. Bạn đã làm được đến mức này. Nếu bạn hài lòng với việc chỉ đổi tên các tệp, vui lòng chạy mã của bạn ngay bây giờ. Nó sẽ thực hiện các thay đổi ngay lập tức [và Mac OS và Windows không cho phép bạn chỉ nhấn “hoàn tác” - vì vậy hãy cẩn thận. ]

Nếu bạn cũng muốn sắp xếp các tệp của mình vào các thư mục cho từng tháng, hãy đọc tiếp

Di chuyển tệp của bạn bằng Pathlib

Vì chúng ta có thể truy cập rất nhiều phần tử khác nhau của đối tượng Pathlib nên chúng ta có thể sử dụng các phần tử này để sắp xếp các tệp của mình thành các thư mục có ý nghĩa

Tự động di chuyển tệp vào các thư mục khác nhau. Nguồn. Nik Piepenbreier

Ví dụ: nếu bạn muốn sắp xếp các tệp của mình thành các thư mục theo từng tháng mà chúng thuộc về, chúng tôi có thể tự động hóa việc này bằng Pathlib

Tôi sẽ lặp lại một số mã trước đó ở đây để tất cả đều ở đó khi bạn muốn chạy nó cùng một lúc

Hãy chia nhỏ những gì chúng ta đã làm ở đây từng chút một. Tôi đã bao gồm các số bước để bạn dễ dàng theo dõi hơn, vì một số mã đã thay đổi

  1. Chúng tôi đã thêm một điều kiện để kiểm tra xem tệp có thực sự là tệp [chứ không phải thư mục]. [Mẹo. nếu bạn đang chạy máy Mac, đôi khi các tệp phiền phức có tên “. DS_Store” được thêm vào. Phần thứ hai của điều kiện kiểm tra đối với những điều đó]
  2. Chúng tôi tạo các biến hữu ích giống như chúng tôi đã có trước đây
  3. Chúng tôi chuyển đổi ngày thành một định dạng hữu ích và dễ sắp xếp hơn
  4. Chúng tôi lưu trữ tháng ở định dạng chuỗi trong biến East-Sales-01Jan2021.xlsx8. Sau đó, chúng tôi tạo một đường dẫn mới bằng cách sử dụng phương thức East-Sales-01Jan2021.xlsx9 bằng cách chèn một chuỗi làm đối số
  5. Sau đó, chúng tôi kiểm tra xem thư mục có tồn tại hay không bằng cách sử dụng phương thức 2021–01–01 — East Sales0, phương thức này trả về giá trị boolean. Nếu thư mục không tồn tại, thì chúng tôi tạo thư mục
  6. Ở đây, chúng tôi tạo một đối tượng đường dẫn mới nối tên tệp mới vào thư mục mới
  7. Cuối cùng, chúng tôi sử dụng phương pháp 2021–01–01 — East Sales1, để di chuyển tệp đến đường dẫn đó. Điều quan trọng cần lưu ý là nếu tệp đó đã tồn tại, nó sẽ bị ghi đè. Để tránh điều này, bạn có thể viết một điều kiện để kiểm tra điều đó trước

Bây giờ tất cả những gì còn lại là nhấn chạy. Điều này sẽ thay đổi tất cả các tên tệp và di chuyển chúng vào các thư mục mới được tạo

Kết luận — Tự động hóa rất thú vị

Cảm ơn đã đọc hướng dẫn này. Tôi hy vọng bạn thấy nó hữu ích trong việc quản lý tệp của mình và xem cách bạn có thể thực hiện điều này hơn nữa

Ví dụ: bạn có thể thêm các điều kiện để chỉ sửa đổi một số loại tệp nhất định và bạn có thể thiết lập các cách để tự động dọn dẹp thư mục Tải xuống lộn xộn của mình

Để biết thêm các hướng dẫn như thế này, hãy cân nhắc đăng ký kênh YouTube của tôi, nơi tôi thường đăng các hướng dẫn giống như hướng dẫn này. Nhấn vào nút bên dưới để đăng ký

Làm cách nào để đặt tên tệp trong Python?

Hệ điều hành Python. phương thức rename[] đổi tên một tập tin. Tệp bạn đang đổi tên phải tồn tại. Bạn cần chỉ định đường dẫn của tệp bạn đang đổi tên cũng như đường dẫn mới cho tệp

Tên tệp động là gì?

Sử dụng hỗ trợ tên tệp động để chỉ định mẫu tên tệp thay vì tên tệp thực tế . Một số chương trình ứng dụng tạo tên tệp đầu ra có thể thay đổi. Tên thay đổi dựa trên các tiêu chí cụ thể như ngày, tháng, năm hiện tại hoặc tên tệp bao gồm số thứ tự tăng dần.

Chủ Đề