搜索到与相关的文章
Python

python 气象设备UDP传输数据解析——笔记

文章目录一、背景二、总结内容2.1UDP通信服务端创建方式**DUP采用的是无连接的套接字**2.216进制数据解析2.3文件创建与数据储存分析一、背景最近在处理公司的一设备,内置的DTU通过UDP向服务器发送16进制的数据报文,由于第一次接触此类数据解析方式,在这里做总结与反省,避免大家走弯路二、总结内容2.1UDP通信服务端创建方式步骤创建UDP的socket通信方式。绑定具体的端口。设置端口复用等待(这一步可以省略)获取数据。向客户端发送数据。解析储

系统 2019-09-27 17:53:08 2073

Python

Python中eval带来的潜在风险代码分析

0x00前言eval是Python用于执行python表达式的一个内置函数,使用eval,可以很方便的将字符串动态执行。比如下列代码:>>>eval("1+2")>>>eval("[xforxinrange(10)]")[0,1,2,3,4,5,6,7,8,9]当内存中的内置模块含有os的话,eval同样可以做到命令执行:>>>importos>>>eval("os.system('whoami')")win-20140812chj\administrat

系统 2019-09-27 17:53:02 2073

Python

Python3快速入门(六)——Python3面向对象

Python3快速入门(六)——Python3面向对象一、面向对象技术简介1、面向对象简介面向对象编程(ObjectOrientedPrograming,OOP)是一种编程思想,OOP把对象当成程序的一个基本单元,一个对象包含数据和操作数据的方法。面向对象编程的三大特性如下:A、封装,可以隐藏实现细节,使代码模块化。B、继承,可以通过扩展已存在的类来实现代码重用,避免重复编写相同的代码。C、多态,封装和继承的目的都是为了实现代码重用,而多态是为了实现接口重

系统 2019-09-27 17:52:41 2073

Python

Python 命令行之旅:使用 argparse 实现 git 命令

Python命令行之旅:使用argparse实现git命令作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用arg

系统 2019-09-27 17:52:36 2073

Python

Python 命令行之旅:使用 argparse 实现 git 命令

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认

系统 2019-09-27 17:52:35 2073

Python

Python实现在Linux系统下更改当前进程运行用户

在上一篇文章中,我们讲了如何在linux上用python写一个守护进程。主要原理是利用linux的fork函数来创建一个进程,然后退出父进程运行,生成的子进程就会成为一个守护进程。细心观察的可能会发现,这个守护进程的运行身份是执行这个程序的用户,如果把这个守护程序加入到系统的服务项,那么这个守护程序的执行身份应该是root。一个情况出现了,root的权限比较大,如果通过这个root身份的守护程序来进行操作,危险性是比较大的。一种好的办法是生成一个身份为ro

系统 2019-09-27 17:52:32 2073

Python

python实现动态数组的示例代码

实现一个支持动态扩容的数组并完成其增删改查#通过python实现动态数组"""数组特点:占用一段连续的内存空间,支持随机(索引)访问,且时间复杂度为O(1)添加元素时间复杂度:O(n)删除元素时间复杂度:O(n)"""classArr:def__init__(self,capacity=10):"""构造函数:paramcapacity:数组最大容量,不指定的话默认为10"""self._capacity=capacityself._size=0#数组有效

系统 2019-09-27 17:52:16 2073

Python

趣学python3(4)-数字,字符串,列表(1)

1、数字普通除法print(7/3)2.3333333333333335地板除print(7//3)2取余print(7%3)1乘法print(7*3)21乘方print(3**3)27四则运算print((3*2)+5-(5*3))-42、字符串单引号和双引号作用一样print(‘hello’)print(“hello”)print("‘hello’")hellohello‘hello’将转义符原样输出print(r"hello\nworld")hell

系统 2019-09-27 17:51:24 2073

Python

Python随机函数random()使用方法小结

1.random.random()random.random()方法返回一个随机数,其在0至1的范围之内,以下是其具体用法:importrandomprint("随机数:",random.random())输出结果:0.228675212571162.random.uniform()random.uniform()是在指定范围内生成随机数,其有两个参数,一个是范围上限,一个是范围下线,具体用法如下:importrandomprint(random.unif

系统 2019-09-27 17:51:23 2073

Python

python实现简单成绩录入系统

学了一个多月的python,做了一个小程序:python实现简单成绩录入系统,实验一下menu部分fromtkinterimport*#这是一个python模块,python3中都有importtkinter.messagebox#这也是一个模块fromfile_readimportreadfromfile_writeimportwriteclassstudent_main():#定义一个学生类def__init__(self):self.name=''s

系统 2019-09-27 17:50:34 2073