faker.providers.date_time¶
- class faker.providers.date_time.Provider(generator: Any)¶
基类:
BaseProvider此提供程序的大多数方法都接受“start_datetime”和/或“end_datetime”参数。
这些参数接受各种类型,并用于定义随机日期/时间范围。
我们将此类型称为
DateParseType。一个
DateParseType可以是一个 datetime 或 date 对象
一个整数或浮点数,表示 UNIX 时间戳
特殊字符串 'now'
特殊字符串 'today'
一个 timedelta 对象,表示与现在的时差
一个“timedelta 字符串”,例如“+2d”、“-3w”、“+4y”等。表示与现在的时差。
- am_pm() str¶
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.am_pm() ... 'AM' 'AM' 'PM' 'PM' 'AM'
- century() str¶
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.century() ... 'XIII' 'XIV' 'II' 'IX' 'XVII'
- date(pattern: str = '%Y-%m-%d', end_datetime: date | datetime | timedelta | str | int | None = None) str¶
获取一个介于 1970 年 1 月 1 日和现在之间的日期字符串。
- 参数:
pattern – 日期格式(默认为年-月-日)
end_datetime – 一个
DateParseType。默认为当前日期和时间
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date() ... '2017-04-02' '2012-05-31' '1993-07-14' '1984-06-27' '1998-08-11'
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date(pattern='%m/%d/%Y') ... '04/02/2017' '05/31/2012' '07/14/1993' '06/27/1984' '08/11/1998'
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date(end_datetime='+1w') ... '2017-04-08' '2012-06-05' '1993-07-17' '1984-06-29' '1998-08-15'
- date_between(start_date: date | datetime | timedelta | str | int = '-30y', end_date: date | datetime | timedelta | str | int = 'today') date¶
获取一个基于两个给定日期之间随机日期的 Date 对象。接受可被 strtotime() 识别的日期字符串。
- 参数:
start_date – 一个
DateParseType。默认为 30 年前end_date – 一个
DateParseType。默认为"today"
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_between() ... datetime.date(2021, 4, 16) datetime.date(2018, 9, 11) datetime.date(2008, 7, 28) datetime.date(2003, 9, 22) datetime.date(2011, 4, 18)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_between(start_date='-1w') ... datetime.date(2025, 12, 14) datetime.date(2025, 12, 14) datetime.date(2025, 12, 11) datetime.date(2025, 12, 10) datetime.date(2025, 12, 12)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_between(start_date="-1y", end_date="+1w") ... datetime.date(2025, 10, 25) datetime.date(2025, 9, 23) datetime.date(2025, 5, 20) datetime.date(2025, 3, 21) datetime.date(2025, 6, 23)
- date_between_dates(date_start: date | datetime | timedelta | str | int | None = None, date_end: date | datetime | timedelta | str | int | None = None) date¶
获取两个给定日期之间的随机日期。
- 参数:
date_start – 一个
DateParseType。默认为 UNIX 纪元时间date_end – 一个
DateParseType。默认为当前日期和时间
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_between_dates() ... datetime.date(2025, 12, 16) datetime.date(2025, 12, 16) datetime.date(2025, 12, 16) datetime.date(2025, 12, 16) datetime.date(2025, 12, 16)
- date_object(end_datetime: datetime | None = None) date¶
获取一个介于 1970 年 1 月 1 日和现在之间的 date 对象
- 参数:
end_datetime – 一个
DateParseType。默认为当前日期和时间- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_object() ... datetime.date(2017, 4, 2) datetime.date(2012, 5, 31) datetime.date(1993, 7, 14) datetime.date(1984, 6, 27) datetime.date(1998, 8, 11)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_object(end_datetime='+1w') ... datetime.date(2017, 4, 8) datetime.date(2012, 6, 5) datetime.date(1993, 7, 17) datetime.date(1984, 6, 29) datetime.date(1998, 8, 15)
- date_of_birth(tzinfo: tzinfo | None = None, minimum_age: int = 0, maximum_age: int = 115) date¶
生成一个随机的出生日期,表示为一个 Date 对象,受可选的 minimum_age 和 maximum_age 参数限制。
- 参数:
tzinfo – 默认为 None。
minimum_age – 默认为
0。maximum_age – 默认为
115。
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_of_birth() ... datetime.date(2007, 11, 29) datetime.date(1997, 11, 17) datetime.date(1958, 9, 29) datetime.date(1939, 12, 29) datetime.date(1969, 4, 7)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_of_birth(minimum_age=30, maximum_age=50) ... datetime.date(1992, 9, 8) datetime.date(1990, 11, 15) datetime.date(1983, 10, 15) datetime.date(1980, 5, 23) datetime.date(1985, 9, 10)
- date_this_century(before_today: bool = True, after_today: bool = False) date¶
获取当前世纪的 Date 对象。
- 参数:
before_today – 包括今天之前的当前世纪日期。默认为 True
after_today – 包括今天之后的当前世纪日期。默认为 False
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_century() ... datetime.date(2021, 12, 1) datetime.date(2019, 9, 4) datetime.date(2010, 12, 1) datetime.date(2006, 9, 20) datetime.date(2013, 4, 9)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_century(before_today=False, after_today=True) ... datetime.date(2088, 6, 24) datetime.date(2082, 1, 29) datetime.date(2057, 2, 4) datetime.date(2045, 2, 16) datetime.date(2063, 10, 24)
- date_this_decade(before_today: bool = True, after_today: bool = False) date¶
获取当前十年的 Date 对象。
- 参数:
before_today – 包括今天之前的当前十年日期。默认为 True
after_today – 包括今天之后的当前十年日期。默认为 False
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_decade() ... datetime.date(2025, 1, 11) datetime.date(2024, 7, 7) datetime.date(2022, 7, 4) datetime.date(2021, 7, 17) datetime.date(2023, 1, 17)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_decade(before_today=False, after_today=True) ... datetime.date(2029, 5, 16) datetime.date(2029, 1, 8) datetime.date(2027, 8, 29) datetime.date(2027, 1, 2) datetime.date(2028, 1, 10)
- date_this_month(before_today: bool = True, after_today: bool = False) date¶
获取当前月份的 Date 对象。
- 参数:
before_today – 包括今天之前的当前月份日期。默认为 True
after_today – 包括今天之后的当前月份日期。默认为 False
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_month() ... datetime.date(2025, 12, 13) datetime.date(2025, 12, 12) datetime.date(2025, 12, 7) datetime.date(2025, 12, 4) datetime.date(2025, 12, 8)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_month(before_today=False, after_today=True) ... datetime.date(2025, 12, 29) datetime.date(2025, 12, 28) datetime.date(2025, 12, 22) datetime.date(2025, 12, 20) datetime.date(2025, 12, 24)
- date_this_year(before_today: bool = True, after_today: bool = False) date¶
获取当前年份的 Date 对象。
- 参数:
before_today – 包括今天之前的当前年份日期。默认为 True
after_today – 包括今天之后的当前年份日期。默认为 False
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_year() ... datetime.date(2025, 10, 22) datetime.date(2025, 9, 22) datetime.date(2025, 5, 27) datetime.date(2025, 4, 1) datetime.date(2025, 6, 28)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_this_year(before_today=False, after_today=True) ... datetime.date(2025, 12, 29) datetime.date(2025, 12, 28) datetime.date(2025, 12, 22) datetime.date(2025, 12, 20) datetime.date(2025, 12, 24)
- date_time(tzinfo: tzinfo | None = None, end_datetime: date | datetime | timedelta | str | int | None = None) datetime¶
获取一个介于 1970 年 1 月 1 日和指定 end_datetime 之间的 datetime 对象
- 参数:
tzinfo – 时区,datetime.tzinfo 子类的实例
end_datetime – 一个
DateParseType。默认为当前日期和时间
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time() ... datetime.datetime(2017, 4, 2, 7, 10, 7, 502264) datetime.datetime(2012, 5, 31, 1, 50, 8, 77349) datetime.datetime(1993, 7, 14, 15, 27, 56, 829760) datetime.datetime(1984, 6, 27, 17, 48, 32, 588219) datetime.datetime(1998, 8, 11, 10, 27, 26, 209287)
- date_time_ad(tzinfo: tzinfo | None = None, end_datetime: date | datetime | timedelta | str | int | None = None, start_datetime: date | datetime | timedelta | str | int | None = None) datetime¶
获取一个介于公元 0001 年 1 月 1 日和现在之间的 datetime 对象
- 参数:
tzinfo – 时区,datetime.tzinfo 子类的实例
end_datetime – 一个
DateParseType。默认为当前日期和时间start_datetime – 一个
DateParseType。默认为 UNIX 时间戳-62135596800,
相当于 0001-01-01 00:00:00 UTC
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_ad() ... datetime.datetime(1710, 12, 2, 9, 45, 2, 972115) datetime.datetime(1535, 10, 30, 1, 56, 21, 960716) datetime.datetime(852, 8, 21, 17, 50, 48, 873749) datetime.datetime(525, 4, 18, 19, 55, 13, 558075) datetime.datetime(1036, 4, 23, 18, 53, 7, 201492)
- date_time_between(start_date: date | datetime | timedelta | str | int = '-30y', end_date: date | datetime | timedelta | str | int = 'now', tzinfo: tzinfo | None = None) datetime¶
获取一个基于两个给定日期之间随机日期的 datetime 对象。接受可被 strtotime() 识别的日期字符串。
- 参数:
start_date – 一个
DateParseType。默认为 30 年前end_date – 一个
DateParseType。默认为"now"tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_between() ... datetime.datetime(2021, 4, 16, 7, 19, 4, 236214) datetime.datetime(2018, 9, 11, 20, 43, 50, 808743) datetime.datetime(2008, 7, 29, 2, 13, 31, 361449) datetime.datetime(2003, 9, 22, 19, 24, 7, 49189) datetime.datetime(2011, 4, 18, 22, 41, 3, 171082)
- date_time_between_dates(datetime_start: date | datetime | timedelta | str | int | None = None, datetime_end: date | datetime | timedelta | str | int | None = None, tzinfo: tzinfo | None = None) datetime¶
获取两个给定 datetime 之间的随机 datetime。
- 参数:
datetime_start – 一个
DateParseType。默认为 UNIX 纪元时间datetime_end – 一个
DateParseType。默认为当前日期和时间tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_between_dates() ... datetime.datetime(2025, 12, 16, 0, 8, 21) datetime.datetime(2025, 12, 16, 0, 8, 21) datetime.datetime(2025, 12, 16, 0, 8, 21) datetime.datetime(2025, 12, 16, 0, 8, 21) datetime.datetime(2025, 12, 16, 0, 8, 21)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_between_dates(datetime_start='-30y', datetime_end='now') ... datetime.datetime(2021, 4, 16, 7, 19, 4, 236214) datetime.datetime(2018, 9, 11, 20, 43, 50, 808743) datetime.datetime(2008, 7, 29, 2, 13, 31, 361449) datetime.datetime(2003, 9, 22, 19, 24, 7, 49189) datetime.datetime(2011, 4, 18, 22, 41, 3, 171082)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_between_dates(datetime_start='now', datetime_end='+1y') ... datetime.datetime(2026, 10, 20, 10, 8, 18, 441207) datetime.datetime(2026, 9, 18, 20, 11, 7, 993625) datetime.datetime(2026, 5, 18, 14, 46, 7, 345382) datetime.datetime(2026, 3, 20, 13, 44, 28, 534973) datetime.datetime(2026, 6, 20, 17, 51, 2, 405703)
- date_time_this_century(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) datetime¶
获取当前世纪的 datetime 对象。
- 参数:
before_now – 包括今天之前的当前世纪日期。默认为 True
after_now – 包括今天之后的当前世纪日期。默认为 False
tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_century() ... datetime.datetime(2021, 12, 1, 23, 14, 35, 875644) datetime.datetime(2019, 9, 4, 4, 4, 55, 720689) datetime.datetime(2010, 12, 1, 10, 35, 53, 945228) datetime.datetime(2006, 9, 20, 18, 59, 20, 620475) datetime.datetime(2013, 4, 9, 9, 33, 58, 865391)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_century(before_now=False, after_now=True) ... datetime.datetime(2088, 6, 24, 13, 5, 27, 293042) datetime.datetime(2082, 1, 29, 2, 53, 11, 902200) datetime.datetime(2057, 2, 4, 22, 35, 18, 977520) datetime.datetime(2045, 2, 16, 3, 34, 24, 284047) datetime.datetime(2063, 10, 24, 21, 59, 36, 840809)
- date_time_this_decade(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) datetime¶
获取当前十年的 datetime 对象。
- 参数:
before_now – 包括今天之前的当前十年日期。默认为 True
after_now – 包括今天之后的当前十年日期。默认为 False
tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_decade() ... datetime.datetime(2025, 1, 11, 11, 12, 15, 441906) datetime.datetime(2024, 7, 7, 7, 30, 58, 396111) datetime.datetime(2022, 7, 4, 3, 59, 19, 560678) datetime.datetime(2021, 7, 17, 9, 42, 15, 839571) datetime.datetime(2023, 1, 17, 12, 52, 55, 924150)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_decade(before_now=False, after_now=True) ... datetime.datetime(2029, 5, 16, 5, 5, 14, 798948) datetime.datetime(2029, 1, 8, 12, 0, 4, 896384) datetime.datetime(2027, 8, 29, 4, 30, 7, 323889) datetime.datetime(2027, 1, 2, 10, 11, 2, 754494) datetime.datetime(2028, 1, 10, 3, 44, 3, 614433)
- date_time_this_month(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) datetime¶
获取当前月份的 datetime 对象。
- 参数:
before_now – 包括今天之前的当前月份日期。默认为 True
after_now – 包括今天之后的当前月份日期。默认为 False
tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_month() ... datetime.datetime(2025, 12, 13, 16, 6, 33, 774924) datetime.datetime(2025, 12, 12, 8, 58, 8, 641366) datetime.datetime(2025, 12, 7, 7, 27, 51, 475119) datetime.datetime(2025, 12, 4, 21, 14, 45, 825672) datetime.datetime(2025, 12, 8, 16, 7, 48, 187529)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_month(before_now=False, after_now=True) ... datetime.datetime(2025, 12, 29, 12, 16, 46, 712201) datetime.datetime(2025, 12, 28, 3, 5, 17, 431469) datetime.datetime(2025, 12, 22, 17, 34, 48, 446979) datetime.datetime(2025, 12, 20, 3, 31, 37, 798313) datetime.datetime(2025, 12, 24, 4, 23, 51, 26185)
- date_time_this_year(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) datetime¶
获取当前年份的 datetime 对象。
- 参数:
before_now – 包括今天之前的当前年份日期。默认为 True
after_now – 包括今天之后的当前年份日期。默认为 False
tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_year() ... datetime.datetime(2025, 10, 22, 16, 59, 41, 797493) datetime.datetime(2025, 9, 22, 12, 43, 53, 619657) datetime.datetime(2025, 5, 27, 18, 45, 57, 926103) datetime.datetime(2025, 4, 1, 8, 43, 21, 838926) datetime.datetime(2025, 6, 28, 10, 30, 29, 586896)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.date_time_this_year(before_now=False, after_now=True) ... datetime.datetime(2025, 12, 29, 12, 16, 46, 712201) datetime.datetime(2025, 12, 28, 3, 5, 17, 431469) datetime.datetime(2025, 12, 22, 17, 34, 48, 446979) datetime.datetime(2025, 12, 20, 3, 31, 37, 798313) datetime.datetime(2025, 12, 24, 4, 23, 51, 26185)
- day_of_month() str¶
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.day_of_month() ... '02' '31' '14' '27' '11'
- day_of_week() str¶
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.day_of_week() ... 'Sunday' 'Thursday' 'Wednesday' 'Wednesday' 'Tuesday'
- future_date(end_date: date | datetime | timedelta | str | int = '+30d') date¶
获取一个基于从现在开始 1 天到给定日期之间的随机日期的 Date 对象。
- 参数:
end_date – 一个
DateParseType。默认为"+30d"tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.future_date() ... datetime.date(2026, 1, 10) datetime.date(2026, 1, 7) datetime.date(2025, 12, 29) datetime.date(2025, 12, 24) datetime.date(2025, 12, 31)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.future_date(end_date='+1y') ... datetime.date(2026, 10, 20) datetime.date(2026, 9, 18) datetime.date(2026, 5, 19) datetime.date(2026, 3, 21) datetime.date(2026, 6, 21)
- future_datetime(end_date: date | datetime | timedelta | str | int = '+30d', tzinfo: tzinfo | None = None) datetime¶
获取一个基于从现在开始 1 秒到给定日期之间的随机日期的 datetime 对象。
- 参数:
end_date – 一个
DateParseType。默认为"+30d"tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.future_datetime() ... datetime.datetime(2026, 1, 10, 8, 7, 22, 594731) datetime.datetime(2026, 1, 7, 17, 51, 59, 54467) datetime.datetime(2025, 12, 28, 14, 57, 3, 116942) datetime.datetime(2025, 12, 23, 18, 33, 33, 957843) datetime.datetime(2025, 12, 31, 8, 15, 25, 566513)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.future_datetime(end_date='+1y') ... datetime.datetime(2026, 10, 20, 10, 8, 18, 596785) datetime.datetime(2026, 9, 18, 20, 11, 8, 235670) datetime.datetime(2026, 5, 18, 14, 46, 7, 924810) datetime.datetime(2026, 3, 20, 13, 44, 29, 276056) datetime.datetime(2026, 6, 20, 17, 51, 2, 894428)
- iso8601(tzinfo: tzinfo | None = None, end_datetime: date | datetime | timedelta | str | int | None = None, sep: str = 'T', timespec: str = 'auto') str¶
获取 UNIX 纪元时间到现在之间的 ISO 8601 字符串。
- 参数:
tzinfo – 时区,datetime.tzinfo 子类的实例
end_datetime – 一个
DateParseType。默认为当前日期和时间sep – 日期和时间之间的分隔符,默认为 'T'
timespec – 时间部分的格式说明符,默认为 'auto' - 请参阅 datetime.isoformat() 文档
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.iso8601() ... '2017-04-02T07:10:07.502264' '2012-05-31T01:50:08.077349' '1993-07-14T15:27:56.829760' '1984-06-27T17:48:32.588219' '1998-08-11T10:27:26.209287'
- month() str¶
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.month() ... '04' '05' '07' '06' '08'
- month_name() str¶
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.month_name() ... 'April' 'May' 'July' 'June' 'August'
- past_date(start_date: date | datetime | timedelta | str | int = '-30d', tzinfo: tzinfo | None = None) date¶
获取一个基于给定日期和 1 天前之间的随机日期的 Date 对象。
- 参数:
start_date – 一个
DateParseType。默认为"-30d"tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.past_date() ... datetime.date(2025, 12, 10) datetime.date(2025, 12, 7) datetime.date(2025, 11, 28) datetime.date(2025, 11, 23) datetime.date(2025, 11, 30)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.past_date(start_date='-1y') ... datetime.date(2025, 10, 19) datetime.date(2025, 9, 17) datetime.date(2025, 5, 17) datetime.date(2025, 3, 19) datetime.date(2025, 6, 19)
- past_datetime(start_date: date | datetime | timedelta | str | int = '-30d', tzinfo: tzinfo | None = None) datetime¶
获取一个基于给定日期和 1 秒前之间的随机日期的 datetime 对象。
- 参数:
start_date – 一个
DateParseType。默认为"-30d"tzinfo – 时区,datetime.tzinfo 子类的实例
- 示例:
datetime(‘1999-02-02 11:42:52’)
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.past_datetime() ... datetime.datetime(2025, 12, 11, 8, 7, 21, 594731) datetime.datetime(2025, 12, 8, 17, 51, 58, 54467) datetime.datetime(2025, 11, 28, 14, 57, 2, 116942) datetime.datetime(2025, 11, 23, 18, 33, 32, 957843) datetime.datetime(2025, 12, 1, 8, 15, 24, 566513)
- pytimezone(*args: Any, **kwargs: Any) tzinfo | None¶
生成一个随机时区(有关任何参数,请参阅
faker.timezone),并返回一个可用作datetime或其他 faker 的tzinfo的 Python 对象。- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.pytimezone() ... zoneinfo.ZoneInfo(key='Indian/Maldives') zoneinfo.ZoneInfo(key='America/Barbados') zoneinfo.ZoneInfo(key='Europe/Stockholm') zoneinfo.ZoneInfo(key='Africa/Windhoek') zoneinfo.ZoneInfo(key='Asia/Qatar')
- time(pattern: str = '%H:%M:%S', end_datetime: date | datetime | timedelta | str | int | None = None) str¶
获取一个时间字符串(默认为 24 小时格式)
- 参数:
pattern – 格式
end_datetime – 一个
DateParseType。默认为当前日期和时间
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.time() ... '07:10:07' '01:50:08' '15:27:56' '17:48:32' '10:27:26'
>>> Faker.seed(0) >>> for _ in range(5): ... fake.time(pattern='%I:%M %p') ... '07:10 AM' '01:50 AM' '03:27 PM' '05:48 PM' '10:27 AM'
- time_delta(end_datetime: date | datetime | timedelta | str | int | None = None) timedelta¶
获取一个随机的 timedelta 对象,其持续时间介于当前日期时间和 end_datetime 之间
- 参数:
end_datetime – 一个
DateParseType。默认为当前日期和时间- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.time_delta() ... datetime.timedelta(0) datetime.timedelta(0) datetime.timedelta(0) datetime.timedelta(0) datetime.timedelta(0)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.time_delta(end_datetime='+30h') ... datetime.timedelta(days=1, seconds=4797, microseconds=559965) datetime.timedelta(seconds=81859, microseconds=75518) datetime.timedelta(seconds=45421, microseconds=730730) datetime.timedelta(seconds=27963, microseconds=9032) datetime.timedelta(seconds=55217, microseconds=669908)
- time_object(end_datetime: date | datetime | timedelta | str | int | None = None) time¶
获取一个 time 对象
- 参数:
end_datetime – 一个
DateParseType。默认为当前日期和时间- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.time_object() ... datetime.time(7, 10, 7, 502264) datetime.time(1, 50, 8, 77349) datetime.time(15, 27, 56, 829760) datetime.time(17, 48, 32, 588219) datetime.time(10, 27, 26, 209287)
>>> Faker.seed(0) >>> for _ in range(5): ... fake.time_object(end_datetime='+1h') ... datetime.time(8, 0, 47, 420929) datetime.time(2, 35, 36, 713200) datetime.time(15, 53, 10, 887451) datetime.time(18, 4, 4, 688520) datetime.time(10, 58, 6, 798284)
- time_series(start_date: date | datetime | timedelta | str | int = '-30d', end_date: date | datetime | timedelta | str | int = 'now', precision: float | None = None, distrib: Callable[[datetime], float] | None = None, tzinfo: tzinfo | None = None) Iterator[Tuple[datetime, Any]]¶
返回一个生成器,生成
(<datetime>, <value>)元组。数据点将从
start_date开始,并按照precision指定的时间间隔生成。- 参数:
start_date – 一个
DateParseType。默认为"-30d"end_date – 一个
DateParseType。默认为"now"precision – 一个浮点数,表示数据点之间的时间间隔。
默认为时间间隔的 1/30。:param distrib: 一个可调用对象,接受一个 datetime 对象并返回一个值。默认为均匀分布。:param tzinfo: 时区,datetime.tzinfo 子类的实例
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.time_series() ... <generator object Provider.time_series at 0x7db940f37450> <generator object Provider.time_series at 0x7db940f37450> <generator object Provider.time_series at 0x7db940f37450> <generator object Provider.time_series at 0x7db940f37450> <generator object Provider.time_series at 0x7db940f37450>
- timezone() str¶
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.timezone() ... 'Indian/Maldives' 'America/Barbados' 'Europe/Stockholm' 'Africa/Windhoek' 'Asia/Qatar'
- unix_time(end_datetime: date | datetime | timedelta | str | int | None = None, start_datetime: date | datetime | timedelta | str | int | None = None) float¶
获取一个介于 1970 年 1 月 1 日和现在之间的 Unix 时间戳,除非传递了明确的
start_datetime或 end_datetime 值。在 Windows 上,小数部分始终为 0。
- 参数:
end_datetime – 一个
DateParseType类型。默认为 Unix 纪元。start_datetime – 一个
DateParseType类型。默认为当前日期和时间。
- 示例:
>>> Faker.seed(0) >>> for _ in range(5): ... fake.unix_time() ... 1491117007.5022635 1338429008.077349 742663676.82976 457206512.5882192 902831246.2092874