time模块时间格式转换及faker库数据伪造

Python中基本都是以时间戳来保存当前时间的。时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。

 

时间戳是指格林威治时间1970年01月01日00时00分00秒起至当下的总秒数。通俗的讲, 时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。它的提出主要是为用户提供一份电子证据, 以证明用户的某些数据的产生时间。

import time
time = time.time()
print(time)  # 获取得到的单位为秒

1622858931.560568

格式化日期

import time
fmt = '%Y-%m-%d-%H-%M-%S'
time = time.strftime(fmt)
print(time,type(time))

2021-06-05-10-21-28  <class 'str'>

Faker库  测试数据伪造

# 安装 pip install faker
import faker

fk = faker.Faker(locale='zh_CN')    # 先创建一个对象,默认是美国格式,需切换成中国
res = fk.phone_number()
print(res)    # 18872760016
# print(fk.company())   公司
# print(fk.address())   地址
# print(fk.city())    城市
# print(fk.name())    姓名

"""
1、基础信息类
ssn():生成身份证号
bs():随机公司服务名
company():随机公司名(长)
company_prefix():随机公司名(短)
company_suffix():公司性质,如'信息有限公司'
credit_card_expire():随机信用卡到期日,如'03/30'
credit_card_full():生成完整信用卡信息
credit_card_number():信用卡号
credit_card_provider():信用卡类型
credit_card_security_code():信用卡安全码
job():随机职位
first_name_female():女性名
first_name_male():男性名
name():随机生成全名
name_female():男性全名
name_male():女性全名
phone_number():随机生成手机号
phonenumber_prefix():随机生成手机号段,如139

2、地理信息类:
city_suffix():市,县
country():国家
country_code():国家编码
district():区
geo_coordinate():地理坐标
latitude():地理坐标(纬度)
longitude():地理坐标(经度)
postcode():邮编
province():省份
address():详细地址
street_address():街道地址
street_name():街道名
street_suffix():街、路

3、邮箱信息类
ascii_company_email():随机ASCII公司邮箱名
ascii_email():随机ASCII邮箱:
company_email():公司邮箱
email():普通邮箱
safe_email():安全邮箱

4、网络基础信息类
domain_name():生成域名
domain_word():域词(即,不包含后缀)
ipv4():随机IP4地址
ipv6():随机IP6地址
mac_address():随机MAC地址
tld():网址域名后缀(.com,.net.cn,等等,不包括.)
uri():随机URI地址
uri_extension():网址文件后缀
uri_page():网址文件(不包含后缀)
uri_path():网址文件路径(不包含文件名)
url():随机URL地址
user_name():随机用户名
image_url():随机URL地址

5、浏览器信息类
chrome():随机生成Chrome的浏览器user_agent信息
firefox():随机生成FireFox的浏览器user_agent信息
internet_explorer():随机生成IE的浏览器user_agent信息
opera():随机生成Opera的浏览器user_agent信息
safari():随机生成Safari的浏览器user_agent信息
linux_platform_token():随机Linux信息
user_agent():随机user_agent信息

6、数字信息
numerify():三位随机数字
random_digit():0~9随机数
random_digit_not_null():1~9的随机数
random_int():随机数字,默认0~9999,可以通过设置min,max来设置
random_number():随机数字,参数digits设置生成的数字位数
pyfloat():随机Float数字
pyint():随机Int数字(参考random_int()参数)
pydecimal():随机Decimal数字(参考pyfloat参数)

7、文本加密类
pystr():随机字符串
random_element():随机字母
random_letter():随机字母
paragraph():随机生成一个段落
paragraphs():随机生成多个段落
sentence():随机生成一句话
sentences():随机生成多句话,与段落类似
text():随机生成一篇文章
word():随机生成词语
words():随机生成多个词语,用法与段落,句子,类似
binary():随机生成二进制编码
boolean():True/False
language_code():随机生成两位语言编码
locale():随机生成语言/国际 信息
md5():随机生成MD5
null_boolean():NULL/True/False
password():随机生成密码,可选参数:length:密码长度;special_chars:是否能使用特殊字符;digits:是否包含数字;upper_case:是否包含大写字母;lower_case:是否包含小写字母
sha1():随机SHA1
sha256():随机SHA256
uuid4():随机UUID

8、时间信息类
date():随机日期
date_between():随机生成指定范围内日期,参数:start_date,end_date
date_between_dates():随机生成指定范围内日期,用法同上
date_object():随机生产从1970-1-1到指定日期的随机日期。
date_time():随机生成指定时间(1970年1月1日至今)
date_time_ad():生成公元1年到现在的随机时间
date_time_between():用法同dates
future_date():未来日期
future_datetime():未来时间
month():随机月份
month_name():随机月份(英文)
past_date():随机生成已经过去的日期
past_datetime():随机生成已经过去的时间
time():随机24小时时间
timedelta():随机获取时间差
time_object():随机24小时时间,time对象
time_series():随机TimeSeries对象
timezone():随机时区
unix_time():随机Unix时间
year():随机年份

"""

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,可以使用PythonFaker来批量生成车机数据Faker是一个Python,可以用于生成各种假数据,比如姓名、地址、电子邮件、电话号码等。在生成车机数据时,我们可以使用Faker来生成车辆信息、传感器数据等。 下面是一个示例代码,演示如何使用Faker生成车辆信息和传感器数据: ```python from faker import Faker import random import datetime fake = Faker() class Vehicle: def __init__(self): self.make = fake.vehicle_make() self.model = fake.vehicle_model() self.year = fake.vehicle_year() self.fuel_type = fake.vehicle_fuel_type() self.fuel_capacity = random.uniform(30, 80) class SensorData: def __init__(self, vehicle, timestamp): self.vehicle = vehicle self.speed = random.randint(0, 120) self.rpm = random.randint(1000, 6000) self.fuel_level = random.uniform(0, vehicle.fuel_capacity) self.timestamp = timestamp def generate_sensor_data(num_samples): sensor_data = [] for i in range(num_samples): vehicle = Vehicle() timestamp = datetime.datetime.now() - datetime.timedelta(minutes=i) data = SensorData(vehicle, timestamp) sensor_data.append(data) return sensor_data def save_data_to_csv(sensor_data): with open('sensor_data.csv', 'w') as f: f.write('make,model,year,fuel_type,fuel_capacity,speed,rpm,fuel_level,timestamp\n') for data in sensor_data: f.write(f'{data.vehicle.make},{data.vehicle.model},{data.vehicle.year},{data.vehicle.fuel_type},{data.vehicle.fuel_capacity},{data.speed},{data.rpm},{data.fuel_level},{data.timestamp}\n') sensor_data = generate_sensor_data(1000) # 生成1000条传感器数据 save_data_to_csv(sensor_data) # 将数据保存到CSV文件 ``` 在这个示例代码中,我们使用了Faker来生成车辆信息,比如制造商、车型、年份、燃料类型等。同时,我们也使用了Faker来生成传感器数据中的时间戳。最后,我们将生成的数据保存到CSV文件中。需要注意的是,使用Faker生成的数据可能不是完全真实的,但是可以用于模拟一些场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值