使用Python模拟生成新能源车辆数据,并将得到的数据写入HDFS

本文介绍了如何使用Python编写程序,每天凌晨3点模拟生成新能源车辆数据,包括车架号、车辆状态、充电状态等信息,将数据保存为JSON文件,并通过HDFS写入数据。主要涉及Json、Random、Time和Os模块的使用。
摘要由CSDN通过智能技术生成

前言:

使用python编写出一个程序,于每天凌晨3点模拟生成当天的新能源车辆数据,数据中包含有各个字段,分别是车架号、行驶总里程、车速、车辆状态、充电状态、剩余电量SOC、SOC低报警、数据生成时间等。将得到的数据保存到 json文件中,然后在HDFS中部署好需要用到的集群,最终将json文件中的数据写入到HDFS。

一、准备Python环境

这里我使用的是Visual Studio Code来编写程序。

这里先导入我们所需要用到的数据库。

import json
import random
import time
import os

(1)Json模块

JSON(JavaScript Object Notation, JS对象简谱)是一种轻量级的数据交换格式,通常是以键值对的方式呈现,其简洁和清晰的层次结构使得JSON成为理想的数据交换语言,而在Python中处理JSON格式的模块有json和pickle两个,而json模块是我们要用到的。

json模块和pickle都提供了四个方法:dumps, dump, loads, load
序列化:将python的数据转换为json格式的字符串
反序列化:将json格式的字符串转换成python的数据类型

(2)Random模块

Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。

random模块方法说明:

  1. random.random()函数是这个模块中最常用的方法了,它会生成一个随机的浮点数,范围是在0.0~1.0之间。
  2. random.uniform()正好弥补了上面函数的不足,它可以设定浮点数的范围,一个是上限,一个是下限。
  3. random.randint()随机生一个整数int类型,可以指定这个整数的范围,同样有上限和下限值,python random.randint。
  4. random.choice()可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、元组等。
  5. random.shuffle()如果你想将一个序列中的元素,随机打乱的话可以用这个函数方法。
  6. random.sample()可以从指定的序列中,随机的截取指定长度的片断,不作原地修改。

(3)Time模块

Python的Time库可以进行时间相关的处理,如访问当前日期和时间,输出不同格式的时间以及等待指定的时间等。下面要介绍本次程序所要用到的方法。

1.time.localtime([sec])

time.localtime([sec])可以将时间戳的秒数转化为时间元组格式,时间元组是另一种表示时间的方式,下面是每个元素的含义

tm_sec:         秒,范围为[0,59]
tm_min:         分, 范围为[0,59]
tm_hour:        小时,范围为[0,23]
tm_mday:        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值