Nhận ngày sửa đổi Python

Ví dụ: giả sử rằng một tệp văn bản có tên 'New_Products' được lưu trữ theo đường dẫn sau

C. \Users\Ron\Desktop\Test

Trường hợp thời gian sửa đổi của tệp là. 2020-12-23 6. 34 giờ chiều

New_Products     23-12-2020 6. 34 giờ chiều

Tiếp theo, bạn sẽ thấy cách truy xuất thời gian đó bằng Python

Bước 2. Nhận thời gian sửa đổi của tệp bằng Python

Bạn có thể sử dụng mẫu sau để lấy thời gian sửa đổi của tệp bằng Python

import os.path

modified_time = os.path.getmtime[r'path where the file is stored\file name.file extension']

print[modified_time]

ví dụ của chúng tôi

  • Đường dẫn nơi tệp được lưu trữ là. C. \Users\Ron\Desktop\Test
  • tên tập tin là. Sản phẩm mới
  • Phần mở rộng tập tin là. txt

Đặt mọi thứ lại với nhau [đừng quên đặt ký tự 'r' trước tên đường dẫn của bạn]

import os.path

modified_time = os.path.getmtime[r'C:\Users\Ron\Desktop\Test\New_Products.txt']

print[modified_time]
print[type[modified_time]]

Ở đây, thời gian được biểu thị bằng giây kể từ kỷ nguyên

1608766447.5839176

Lưu ý rằng cú pháp print[type[modified_time]] đã được thêm vào cuối mã để kiểm tra loại đối tượng. Trong trường hợp này, loại đối tượng là float

Để chuyển đổi thời gian ở trên thành một chuỗi đại diện cho giờ địa phương

import os.path
import time

modified_time = os.path.getmtime[r'C:\Users\Ron\Desktop\Test\New_Products.txt']

convert_time = time.ctime[modified_time]

print[convert_time]
print[type[convert_time]]

Bây giờ bạn sẽ nhận được chuỗi theo cách sau

Wed Dec 23  18:34:07 2020

Bước 3 [tùy chọn]. Định dạng thời gian sửa đổi

Để định dạng mod_time, chẳng hạn như ddmmyyyy, bạn cần phải

  1. Đầu tiên, chuyển đổi sang giờ địa phương bằng time. giờ địa phương [hoặc UTC sử dụng thời gian. gmtime]
  2. Sau đó, định dạng thời gian sử dụng time. strftime [ddmmyyyy có thể được biểu diễn dưới dạng ‘%d%m%Y’]
import os.path
import time

modified_time = os.path.getmtime[r'C:\Users\Ron\Desktop\Test\New_Products.txt']

convert_time = time.localtime[modified_time]

format_time = time.strftime['%d%m%Y', convert_time]

print[format_time]
print[type[format_time]]

Như bạn có thể thấy, định dạng mới là ddmmyyyy

23122020

Giả sử bạn cũng muốn bao gồm giờ, phút và giây [ngoài ngày]. Trong trường hợp đó, hãy sử dụng '%d%m%Y %H. %M. %S‘ như được chụp bên dưới

Trong Python, bạn có thể sử dụng các mô-đun os và pathlib của thư viện tiêu chuẩn để nhận các dấu thời gian như ngày tạo, sửa đổi cũng như truy cập và thời gian của tệp. Nó có thể được lấy trong thời gian Unix [thời gian Epoch, thời gian Posix] nhưng có thể được chuyển đổi thành ngày và giờ bằng cách sử dụng mô-đun datetime

Bạn có thể nhận được các dấu thời gian sau. Ý nghĩa khác nhau tùy thuộc vào hệ điều hành, vì vậy hãy đặc biệt cẩn thận về thời gian tạo

  • một thời gian. Thời gian truy cập
  • thời gian. thời gian sửa đổi
  • thời gian. Thay đổi thời gian [Unix] và thời gian tạo [Windows]
  • giờ sinh. Thời gian tạo [Một số Unix trong dòng FreeBSD, bao gồm macOS]

Bài viết này mô tả các nội dung sau

  • Nhận
    print[p.stat[]]
    # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
    
    print[type[p.stat[]]]
    # 
    
    7 với thông tin dấu thời gian
    • print[p.stat[]]
      # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
      
      print[type[p.stat[]]]
      # 
      
      8
    • print[p.stat[]]
      # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
      
      print[type[p.stat[]]]
      # 
      
      9
    • Thuộc tính của
      print[p.stat[]]
      # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
      
      print[type[p.stat[]]]
      # 
      
      7
  • Nhận dấu thời gian với chức năng
    print[os.stat['data/temp/test.txt']]
    # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
    
    print[type[os.stat['data/temp/test.txt']]]
    # 
    
    print[os.stat[p]]
    # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
    
    print[type[os.stat[p]]]
    # 
    
    1
  • Chuyển đổi dấu thời gian thành
    print[os.stat['data/temp/test.txt']]
    # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
    
    print[type[os.stat['data/temp/test.txt']]]
    # 
    
    print[os.stat[p]]
    # os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]
    
    print[type[os.stat[p]]]
    # 
    
    2
  • Loại dấu thời gian. atime, ctime, mtime, giờ sinh
  • Nhận ngày và giờ sửa đổi
  • Nhận ngày và giờ tạo
    • Cách tiếp cận đa nền tảng

Ví dụ: tạo tệp và cập nhật tệp sau 10 giây

import os
import pathlib
import datetime
import time
import platform

p = pathlib.Path['data/temp/test.txt']

p.write_text['test']

time.sleep[10]

p.write_text['update']

nguồn.

Liên kết được tài trợ

Nhận
print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7 với thông tin dấu thời gian

Bạn có thể lấy siêu dữ liệu tệp, chẳng hạn như dấu thời gian, làm thuộc tính của đối tượng

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
8

Bạn có thể lấy đối tượng

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7 bằng phương thức
print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
7 của đối tượng
print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
8

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 

nguồn.

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
9

Bạn cũng có thể sử dụng hàm

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
9 của mô-đun os để lấy đối tượng
print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7. Đối số có thể là một chuỗi đường dẫn hoặc một đối tượng
print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
8 [Python 3. 6 trở lên]

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 

nguồn.

Tất cả các phương thức cung cấp cho bạn cùng một đối tượng

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7

print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True

nguồn.

Thuộc tính của
print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7

Bạn có thể lấy dấu thời gian với các thuộc tính

print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
5,
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
6 và
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
7 của đối tượng
print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7. Trên một số hệ thống Unix thuộc họ FreeBSD, bao gồm cả macOS, cũng có thuộc tính
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
9. Ý nghĩa của mỗi được mô tả sau

st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702

nguồn.

Tất cả các thuộc tính là số dấu phẩy động và đại diện cho thời gian Unix [thời gian Epoch, thời gian Posix]. Cách chuyển đổi giá trị này thành

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
2 được mô tả sau

print[type[st.st_ctime]]
# 

nguồn.

Ngoài ra còn có

st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
1,
st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
2 và
st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
3 lưu trữ giá trị của một số nguyên
st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
4 tính bằng nano giây. Không có thuộc tính tương đương cho
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
9

print[st.st_ctime_ns]
# 1549094615972348510

print[type[st.st_ctime_ns]]
# 

nguồn.

Lưu ý rằng, như thể hiện trong tài liệu chính thức, số dấu phẩy động

st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
6 chứa thông tin sau dấu thập phân và
st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
7 lưu trữ các giá trị tính bằng nano giây, nhưng độ chính xác không được đảm bảo

Ý nghĩa và độ phân giải chính xác của các thuộc tính

print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
5,
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
6 và
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
7 phụ thuộc vào hệ điều hành và hệ thống tệp. Ví dụ: trên các hệ thống Windows sử dụng hệ thống tệp FAT hoặc FAT32,
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
6 có độ phân giải 2 giây và
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
5 chỉ có độ phân giải 1 ngày. Xem tài liệu hệ điều hành của bạn để biết chi tiết.

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7 có nhiều thuộc tính khác, chẳng hạn như
print[type[st.st_ctime]]
# 
4, cho biết kích thước của tệp theo byte. Xem bài viết sau về cách lấy kích thước của tệp và thư mục

  • Nhận kích thước của tệp và thư mục trong Python

Nhận dấu thời gian với chức năng
print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
1

Bạn cũng có thể lấy dấu thời gian bằng hàm

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
1,
print[type[st.st_ctime]]
# 
7,
print[type[st.st_ctime]]
# 
8 và
print[type[st.st_ctime]]
# 
9

  • hệ điều hành. đường dẫn — Thao tác tên đường dẫn phổ biến — Python 3. 10. 0 tài liệu

print[os.path.getatime['data/temp/test.txt']]
# 1549094615.972488

print[os.path.getmtime['data/temp/test.txt']]
# 1549094615.9723485

print[os.path.getctime['data/temp/test.txt']]
# 1549094615.9723485

nguồn.

Trong Trăn 3. 6 trở lên, bạn cũng có thể chỉ định đối tượng

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
8 làm đối số thay vì chuỗi đường dẫn

print[os.path.getctime[p]]
# 1549094615.9723485

nguồn.

Như bạn có thể thấy trong mã nguồn, các hàm này chỉ nhận các thuộc tính tương ứng của

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7

def getmtime[filename]:
    """Return the last modification time of a file, reported by os.stat[]."""
    return os.stat[filename].st_mtime


def getatime[filename]:
    """Return the last access time of a file, reported by os.stat[]."""
    return os.stat[filename].st_atime


def getctime[filename]:
    """Return the metadata change time of a file, reported by os.stat[]."""
    return os.stat[filename].st_ctime

nguồn.

Tất nhiên, bạn có thể nhận chính xác giá trị giống như nhận

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7 với
print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
8 hoặc
print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
9 và chỉ định thuộc tính của nó

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
0

nguồn.

Các chức năng để nhận

st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
1,
st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
2,
st = p.stat[]

print[st.st_atime]
# 1549094615.972488

print[st.st_mtime]
# 1549094615.9723485

print[st.st_ctime]
# 1549094615.9723485

print[st.st_birthtime]
# 1549094605.9650702
3 và
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
9 không được cung cấp

Chuyển đổi dấu thời gian thành
print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
2

Như trong mã mẫu trước, dấu thời gian được biểu thị bằng thời gian Unix [thời gian Epoch, thời gian Posix]

Để chuyển đổi nó thành một đối tượng

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
2, hãy sử dụng hàm
print[os.path.getatime['data/temp/test.txt']]
# 1549094615.972488

print[os.path.getmtime['data/temp/test.txt']]
# 1549094615.9723485

print[os.path.getctime['data/temp/test.txt']]
# 1549094615.9723485
1 của mô-đun datetime

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
1

nguồn.

Để biết thêm thông tin, bao gồm cách chỉ định múi giờ khi chuyển đổi, hãy xem bài viết sau

  • Chuyển đổi giữa thời gian Unix [thời gian Epoch] và ngày giờ trong Python

Đối tượng

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
2 có thể được chuyển đổi thành một chuỗi ở bất kỳ định dạng nào hoặc định dạng ISO

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
2

nguồn.

Liên kết được tài trợ

Loại dấu thời gian. atime, ctime, mtime, giờ sinh

Như đã đề cập trong phần giới thiệu, có nhiều loại dấu thời gian khác nhau. atime, ctime, mtime, và giờ sinh

  • một thời gian. Thời gian truy cập
  • thời gian. thời gian sửa đổi
  • thời gian. Thay đổi thời gian [Unix] và thời gian tạo [Windows]
  • giờ sinh. Thời gian tạo [Một số Unix trong dòng FreeBSD, bao gồm macOS]

Xem trang sau để biết chi tiết

  • Thời gian MAC - Wikipedia

Nhận ngày và giờ sửa đổi

Đối với cái gọi là thời gian sửa đổi, bạn có thể nhận được mtime bất kể hệ điều hành

Sử dụng thuộc tính

print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
6 của
print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
7 hoặc hàm
print[os.path.getatime['data/temp/test.txt']]
# 1549094615.972488

print[os.path.getmtime['data/temp/test.txt']]
# 1549094615.9723485

print[os.path.getctime['data/temp/test.txt']]
# 1549094615.9723485
5 như trong mã mẫu cho đến nay

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
3

nguồn.

Để chuyển đổi nó thành một đối tượng

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
2, hãy sử dụng hàm
print[os.path.getatime['data/temp/test.txt']]
# 1549094615.972488

print[os.path.getmtime['data/temp/test.txt']]
# 1549094615.9723485

print[os.path.getctime['data/temp/test.txt']]
# 1549094615.9723485
1 của mô-đun datetime

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
4

nguồn.

Trên Unix, bạn có thể sử dụng ctime để lấy thời gian sửa đổi cuối cùng của siêu dữ liệu, vì vậy, nếu bạn muốn phát hiện các thay đổi về tên tệp, chẳng hạn, hãy sử dụng ctime thay vì mtime. Lưu ý rằng trên Windows, ctime là thời gian tạo

Nhận ngày và giờ tạo

Như đã đề cập ở trên, phương pháp lấy thời gian tạo khác nhau tùy thuộc vào hệ điều hành

  • các cửa sổ. thời gian
  • Một số Unix như macOS. giờ sinh
  • Unix khác. Không thể truy xuất thời gian tạo

Cách tiếp cận đa nền tảng

Nếu chương trình của bạn chỉ dành cho Windows hoặc macOS, bạn có thể sử dụng

print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
7 hoặc
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
9, nhưng nếu bạn muốn hỗ trợ nhiều nền tảng, bạn nên xác định một chức năng

Trích dẫn mã mẫu được liệt kê trong câu hỏi và câu trả lời sau trên Stack Overflow

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
5

nguồn.

Đầu tiên, nó kiểm tra xem hệ thống có phải là Windows hay không với

print[os.path.getctime[p]]
# 1549094615.9723485
0, sau đó nó sử dụng xử lý ngoại lệ để chuyển đổi hoạt động tùy thuộc vào việc thuộc tính
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
9 có tồn tại hay không

Xem bài viết sau để biết thêm thông tin về

print[os.path.getctime[p]]
# 1549094615.9723485
0 và xử lý ngoại lệ

  • Nhận hệ điều hành và phiên bản của nó nơi Python đang chạy
  • "cố gắng. ngoại trừ. khác. cuối cùng. " bằng Python

Đối số có thể là một chuỗi đường dẫn hoặc một đối tượng

print[os.stat['data/temp/test.txt']]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat['data/temp/test.txt']]]
# 

print[os.stat[p]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[os.stat[p]]]
# 
8 [Python 3. 6 trở lên]

print[p.stat[]]
# os.stat_result[st_mode=33188, st_ino=8728494137, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=6, st_atime=1549094615, st_mtime=1549094615, st_ctime=1549094615]

print[type[p.stat[]]]
# 
6

nguồn.

Lưu ý rằng hàm trong mã mẫu này trả về

print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
6, cho biết thời gian sửa đổi, nếu
print[p.stat[] == os.stat['data/temp/test.txt'] == os.stat[p]]
# True
9 không tồn tại. Trong một số trường hợp, tốt hơn nên trả lại
print[os.path.getctime[p]]
# 1549094615.9723485
6 để chỉ rõ rằng không thể truy xuất thời gian tạo

Làm cách nào tôi có thể nhận được ngày sửa đổi của một tệp?

Thuộc tính tệp Windows . Trong cửa sổ Thuộc tính, Ngày tạo, Ngày sửa đổi và Ngày truy cập được hiển thị, tương tự như ví dụ bên dưới. Right-click the file and select Properties. In the Properties window, the Created date, Modified date, and Accessed date is displayed, similar to the example below.

Làm cách nào để trích xuất ngày từ tệp văn bản trong Python?

Sau khi nhập thư viện re, chúng ta có thể sử dụng cụm từ thông dụng "\d{4}-\d{2}-\d{2}". Để trích xuất một ngày từ một chuỗi, trước tiên bạn phải hiểu định dạng của ngày. Để trích xuất ngày, chỉ cần sử dụng biểu thức chính quy và "datetime. ngày giờ.

Làm cách nào để lấy dấu thời gian trong Python?

Để biết cụ thể thời gian hiện tại, bạn có thể sử dụng phương thức strftime[] và truyền vào đó chuỗi ”%H. %M. %S” đại diện cho giờ, phút và giây .

Làm thế nào bạn có thể tìm thấy ngày tạo của một tập tin?

Để làm điều đó, bạn có thể đi tới trình khám phá tệp, nhấp vào tài liệu, nhấp vào Xem, thêm cột và kiểm tra cả “Ngày tạo” và “Ngày sửa đổi”. This will show both in documents folder as well.

Chủ Đề