Python datetime.isoformat() 方法
datetime.isoformat() 方法用于操作模块 datetime 的 datetime 类的对象。
它使用一个 datetime 类对象并返回一个表示 ISO 8601 格式的日期和时间的字符串:
- YYYY-MM-DDTHH:MM:SS.ffffff, 如果微秒不为 0
- YYYY-MM-DDTHH:MM:SS, 如果微秒为 0
如果 datetime 是一个感知对象,则添加一个字符串,它告诉 UTC 偏移量:
- YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM[:SS[.ffffff]], 如果微秒不为 0
- YYYY-MM-DDTHH:MM:SS+HH:MM[:SS[.ffffff]], 如果微秒为 0
日期和时间表示的国际标准是 ISO 8601。它旨在提供一种没有任何歧义的日期和时间表示格式。
模块:
import datetime
类:
from datetime import datetime
用法:
isoformat(sep='T', timespec='auto')
参数:
sep
: 是一个 one-character 分隔符,放置在结果的日期和时间部分之间。默认值为T
。timespec
: 是要包含的时间的附加组件的数量。它的默认值为auto
.如果微秒为 0,则与 'seconds' 相同,否则为微秒。
这两个参数都是可选的。
返回值:
此方法的返回类型是日期和时间的 ISO 8601 格式的字符串。
例:
## importing datetime class
from datetime import datetime
import pytz
## Naive object isoformat() example
x = datetime.today()
print("Normal format:",x)
d = x.isoformat()
print("ISO 8601 format:", d)
print("ISO 8601 format without separator 'T':", x.isoformat(sep=' '))
print()
## Microsecond is not 0 here
x = datetime(2020, 10, 1, 12, 12, 12, 3400)
print("ISO 8601 format:", x.isoformat())
print("ISO format without separator 'T':", x.isoformat(sep=' '))
print()
## Microsecond is 0 here
x = datetime(200,10,12,1,1,1)
print("Date 200/10/12 1:1:1 in ISO 8601 format:", x.isoformat())
print()
## Aware object isoformat example
##Microsecond is 0 here
x = datetime(2020,10,4)
timezone = pytz.timezone("Asia/Tokyo")
x = x.astimezone(timezone)##Adding tzinfo
print("ISO 8601 format for an aware object:", x.isoformat())
## Microsecond is not 0 here
x = datetime(2020,10,4,1,1,1,333)
timezone = pytz.timezone("Asia/Tokyo")
x = x.astimezone(timezone)##Adding tzinfo
print("ISO 8601 format for an aware object:", x.isoformat())
输出
Normal format:2020-05-01 22:52:37.596841 ISO 8601 format:2020-05-01T22:52:37.596841 ISO 8601 format without separator 'T':2020-05-01 22:52:37.596841 ISO 8601 format:2020-10-01T12:12:12.003400 ISO format without separator 'T':2020-10-01 12:12:12.003400 Date 200/10/12 1:1:1 in ISO 8601 format:0200-10-12T01:01:01 ISO 8601 format for an aware object:2020-10-04T09:00:00+09:00 ISO 8601 format for an aware object:2020-10-04T10:01:01.000333+09:00
相关用法
- Python datetime isocalendar()用法及代码示例
- Python datetime isoweekday()用法及代码示例
- Python datetime astimezone()用法及代码示例
- Python datetime timetuple()用法及代码示例
- Python datetime timetz()用法及代码示例
- Python datetime date()用法及代码示例
- Python datetime __str__()用法及代码示例
- Python datetime time()用法及代码示例
- Python datetime utcoffset()用法及代码示例
- Python datetime weekday()用法及代码示例
- Python datetime tzname()用法及代码示例
- Python datetime replace()用法及代码示例
- Python datetime strftime()用法及代码示例
- Python datetime toordinal()用法及代码示例
- Python datetime.timedelta()用法及代码示例
- Python datetime.tzinfo()用法及代码示例
- Python date toordinal()用法及代码示例
- Python date replace()用法及代码示例
- Python date strftime()用法及代码示例
- Python date weekday()用法及代码示例
注:本文由纯净天空筛选整理自 Python datetime isoformat() Method with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。