Cách thêm dấu thời gian vào tên tệp csv trong python
Bạn có thể sử dụng mô-đun datetime. Đây là một trong những thư viện tiêu chuẩn của python, bạn có thể truy cập nó bằng cách
Và bạn có thể kiểm tra bảng mã định dạng để biết chi tiết Thông thường, thật thuận tiện khi đưa ngày và giờ hiện tại vào tệp nhật ký. Trong Python, điều này khá dễ thực hiện from datetime import datetime filename = f"Temperature log-{datetime.now():%Y-%m-%d %H-%m-%d}.csv" Điều này sẽ tạo tên tệp như Temperature log 2020-06-17 22-37-41.csv Temperature log 2019-12-31 00-15-55.csv Lưu ý nếu bạn sử dụng định dạng Ngày/giờ khác, bạn cần tránh các ký tự đặc biệt không được xuất hiện trong tên tệp. Các quy tắc xác định tên tệp trên Linux dễ dàng hơn nhiều so với trên Windows, nhưng vì bạn phải tương thích với cả hai hệ điều hành, nên bạn phải luôn kiểm tra các quy tắc của Windows Các ký tự này bị cấm đối với tên tệp Windows <>:"/\|?* Định dạng ngày-giờ mà chúng tôi đã sử dụng ở trên, Nếu bài đăng này giúp ích cho bạn, vui lòng cân nhắc mua cà phê cho tôi hoặc quyên góp qua PayPal để hỗ trợ nghiên cứu và xuất bản các bài đăng mới trên TechOverflow Không thể kiểm soát tên tệp trực tiếp trong công thức Đồng bộ hóa hoặc Xuất ra thư mục. Bạn có thể đổi tên thư mục trong kết nối SFTP
2) Xác định date_suffix trong một tình huống, sử dụng now() và toString() với định dạng ngày bạn muốn, bạn có thể muốn nó chỉ là yyyy-MM-dd ( nếu bạn đang chạy điều này hàng ngày) 3) Tạo công thức Đồng bộ hóa và thao tác này sẽ tạo thư mục dataset_name+hậu tố được xác định mỗi khi chạy công thức. [dataiku@localhost ~]$ ls -ltr Intercom_conv* Intercom_conv_lookup_table_copy_22022-05-26-12-24. Cách khác nếu bạn muốn kiểm soát tên của tệp "out-s0. csv. gz" thì bạn sẽ cần sử dụng thư mục được quản lý thay vì tập dữ liệu SFTP và sử dụng công thức Python để ghi các tệp có dấu thời gian ở đó. - Thực hiện dấu thời gian cho tên tệp. - Thực thi hàm capture_photo(). -------------- Python -------------- từ picamera nhập PiCamera từ thời gian nhập chế độ ngủ nhập dữ liệu thời gian # Bắt đầu mô-đun máy ảnh với các cài đặt được xác định trước. máy ảnh = máy ảnh PiCamera(). độ phân giải = (640, 480) máy ảnh. tốc độ khung hình = 15 def capture_photo(file_capture, text). # Thêm ngày làm dấu thời gian trên các tệp đã tạo từ ngày nhập datetime def get_filename_datetime(). # Sử dụng ngày hiện tại để lấy tên tệp văn bản. trả về "tệp-" + str (ngày. hôm nay ()) + ". txt" # Nhận đường dẫn đầy đủ để viết. name = get_filename_datetime() print( "TÊN", name) path = "C. \\chương trình\\" + in tên( "PATH" , đường dẫn); với open(path, "w" ) là f. # Ghi dữ liệu vào tệp Trong bài viết này, chúng ta sẽ tìm hiểu cách lấy ngày tạo tệp và sẽ sử dụng ngày đó để tạo dấu thời gian ISO 8601. Cái nào sẽ được sử dụng để đặt tên cho tập tin. Các chức năng được sử dụng. hệ điều hành. con đường. getctime(). hệ điều hành. con đường. Phương thức getctime() trong Python được sử dụng để lấy ctime của hệ thống của đường dẫn đã chỉ định Nếu t không được cung cấp, thời gian hiện tại được trả về bởi localtime() được sử dụng. Định dạng phải là một chuỗi. hệ điều hành. đổi tên (). hệ điều hành. Phương thức rename() trong Python dùng để đổi tên file hoặc thư mục. Phương pháp này đổi tên tệp/thư mục nguồn thành tệp/thư mục đích được chỉ định từ ngày nhập datetime def get_filename_datetime(). # Sử dụng ngày hiện tại để lấy tên tệp văn bản. trả về "tệp-" + str ( ngày. hôm nay ()) + ". txt" # Nhận đường dẫn đầy đủ để viết. name = get_filename_datetime () print ("TÊN", tên) path = "C. \\chương trình\\" + in tên ( "PATH", đường dẫn); với mở (đường dẫn, "w") là f. # Ghi dữ liệu vào tệp. f. viết ("Xin chào") f. write ( "WORLD " ) NAME file-2017-05-17. txt ĐƯỜNG DẪN C. \chương trình\file-2017-05-17. txt Python đổi tên tệp. Python rename() file là một phương thức dùng để đổi tên một file hoặc một thư mục trong lập trình Python. Phương thức tệp Python rename() có thể được khai báo bằng cách chuyển hai đối số có tên src (Nguồn) và dst (Đích) Tìm trong thư mục có tên là Nguồn một tập tin (với tên bất kỳ. csv) Đổi tên tệp thành File_YYYYMMDD_HHMinMinSS. csv (dấu thời gian nên được sửa đổi/ngày tạo nếu có thể (việc sửa đổi/tạo phải giống nhau để cả hai đều hoạt động) Di chuyển nó vào một thư mục có tên là Đích nơi có thể thực hiện thêm công việc trên đó Tôi có một tập lệnh python lặp qua danh sách các trạm, đọc tệp dữ liệu thô cho từng trạm và in dấu thời gian mới nhất của tệp trên trang chẩn đoán. Điều đó hoạt động tốt, nhưng bây giờ chúng tôi có một trạm có tệp dữ liệu thô không ở định dạng mặc định mà tập lệnh sử dụng để đọc dữ liệu logfile = open(log, "a") Và bạn nên sử dụng with. với mở (log, 'a') dưới dạng logfile. tệp nhật ký. write (sttime + error + ' ') Không cần đóng tệp, điều này sẽ tự động xảy ra. Lưu ý rằng nếu ngoại lệ được đưa ra tại đường dẫn = sys. argv [1], dấu thời gian có thể không được đặt khi bạn cố đăng nhập Tên tệp nhật ký Python có dấu thời gian Điều này có nghĩa là, ví dụ: nếu tệp nguồn là một tệp thông thường và đích là một liên kết tượng trưng, thì tệp đích sẽ bị ghi đè, bất kể dấu thời gian Khi mã này được chạy, nó cũng sẽ tạo ra 6 tệp, nhưng thay vì nối thêm số nguyên vào tên tệp nhật ký, nó sẽ nối thêm dấu thời gian bằng cách sử dụng định dạng strftime %Y-%m-%d_%H-%M-%S. Tóm tắt Bây giờ bạn đã biết cách sử dụng nhật ký xoay mạnh mẽ của Python Nó thực hiện một số tác vụ tính toán quan trọng hoặc ghi lại một số dữ liệu và ghi tệp nhật ký. Với ngày hiện tại, chúng tôi có thể tạo một tên tệp duy nhất mỗi ngày. Và sau này, các tệp này có thể được sắp xếp và truy cập theo ngày |