编程技术 - 军军小站|张军博客
编程技术

给明年依然年轻的我们

今天是22岁的最后一天。几个月前,我从沃顿商学院毕业,用文凭上“最高荣誉毕业”的标签安抚了已经年过半百的老妈,然后转头辞去了毕业后的第一份工作,跟一家很受尊敬的公司、还有150万的年薪道了别,回到了上海,加入了“刚毕业就失业”俱乐部,开始了一天三顿盒饭的新生活,中间许多精彩剧情暂时略过。我肯定不是第一个做过这样事的人,也肯定不会是最后一个。所以在说自己的一些有趣故事前,我想借用大家(包括30岁甚至40岁以上的朋友)的一点时间和一点平和的心态,和大家分享过去

系统 2019-08-29 22:01:03 1845

Python

python实现对服务器脚本敏感信息的加密解密功能

背景在实际项目实施中,会编写很多在服务器执行的作业脚本。程序中凡是涉及到数据库链接、操作系统用户链接、IP地址、主机名称的内容都是敏感信息。在纯内网系统中往因为开发时间紧迫,往往都直接将这些敏感信息明文方式写在脚本中了。稍微规范一点的,创建一个通用的config文件,将所有这类敏感信息记录在这个文件中,脚本以读取文件方式获取这些信息。这种方式的好处是脚本不用在应用迁移、灾备部署的时候再起不同的版本,尤其是大数据平台作业运行的脚本,如果是需要做灾备集群,这种

系统 2019-09-27 17:57:49 1844

Python

详解python脚本自动生成需要文件实例代码

python脚本自动生成需要文件在工作中我们经常需要通过一个文件写出另外一个文件,然而既然是对应关系肯定可以总结规律让计算机帮我们完成,今天我们就通过一个通用文件生成的python脚本来实现这个功能,将大家从每日重复的劳动中解放!定义一个函数defproduceBnf(infilename,outfilename):List=[]withopen(infilename,'r')asinf:forlineininf.readlines():List.appe

系统 2019-09-27 17:56:45 1844

Python

python学习笔记之包

#把解决一类问题的模块放在同一个文件夹里——包policy.get()importosos.makedirs('glance/api')os.makedirs('glance/cmd')os.makedirs('glance/db')l=[]l.append(open('glance/__init__.py','w'))l.append(open('glance/api/__init__.py','w'))l.append(open('glance/api

系统 2019-09-27 17:56:42 1844

Python

Python greenlet实现原理和使用示例

最近开始研究Python的并行开发技术,包括多线程,多进程,协程等。逐步整理了网上的一些资料,今天整理了一下greenlet相关的资料。并发处理的技术背景并行化处理目前很受重视,因为在很多时候,并行计算能大大的提高系统吞吐量,尤其在现在多核多处理器的时代,所以像lisp这种古老的语言又被人们重新拿了起来,函数式编程也越来越流行。介绍一个python的并行处理的一个库:greenlet。python有一个非常有名的库叫做stackless,用来做并发处理,主

系统 2019-09-27 17:56:35 1844

Python

Python3 文件(夹)基本操作

相关模块osos.pathshutilpathlib(Newinversion3.4)基本操作判断文件(夹)是否存在。os.path.exists(pathname)#newpathlib.Path(pathname).exists()判断路径名是否为文件。os.path.isfile(pathname)#newpathlib.Path(pathname).is_file()判断路径名是否为目录。os.path.isdir(pathname)#newpat

系统 2019-09-27 17:56:34 1844

Python

python中bisect模块用法实例

本文实例讲述了python中bisect模块用法,分享给大家供大家参考。具体方法分析如下:这个模块只有几个函数,一旦决定使用二分搜索时,立马要想到使用这个模块。示例代码如下:importbisectL=[1,3,3,6,8,12,15]x=3x_insert_point=bisect.bisect_left(L,x)#在L中查找x,x存在时返回x左侧的位置,x不存在返回应该插入的位置..这是3存在于列表中,返回左侧位置1printx_insert_poin

系统 2019-09-27 17:56:28 1844

Python

详解使用pymysql在python中对mysql的增删改查操作(综合)

这一次将使用pymysql来进行一次对MySQL的增删改查的全部操作,相当于对前五次的总结:先查阅数据库:现在编写源码进行增删改查操作,源码为:#!/usr/bin/python#coding:gbkimportpymysqlfrombuiltinsimportint#将MysqlHelper的几个函数写出来defconnDB():#连接数据库conn=pymysql.connect(host="localhost",user="root",passwd=

系统 2019-09-27 17:56:04 1844

Python

在大型项目开发上,Python 真是个“烂”语言!

有人问独孤求败,君子剑和青锋剑哪个好?独孤求败说,这些不重要,只要技术到了,拈花飞叶皆可伤人。杨过和郭靖武功天下卓绝,然而武林中绝大多数人表示:“前辈,哪个门派能招一大拨杨过、郭靖和独孤求败?”Python学习指南:https://edu.csdn.net/topic/python115?utm_source=blog08知乎上有一位开发者写到,“Python做大项目没什么问题,不会比其它主流语言更差,项目的可控规模多大,主要还是取决于人,不是语言。高水平

系统 2019-09-27 17:55:35 1844

Python

003 Python基本语法元素

目录一、概要1.1方法论1.2实践能力一、概要程序设计基本方法:https://www.cnblogs.com/nickchen121/p/11164043.htmlPython开发环境配置:https://www.cnblogs.com/nickchen121/p/11164149.html实例1:温度转换:https://www.cnblogs.com/nickchen121/p/11164029.htmlPython程序语法元素分析:https://

系统 2019-09-27 17:55:34 1844

Python

python中hasattr()、getattr()、setattr()函数

引言:在阅读源码时,有很多简写的形式,其中一个比较常用的就是getattr()用来调用一个类中的变量或者方法,相关联的hasattr()、getattr()、setattr()函数的使用也一并学习了一下。正文:1.hasattr(object,name)判断object对象中是否存在name属性,当然对于python的对象而言,属性包含变量和方法;有则返回True,没有则返回False;需要注意的是name参数是string类型,所以不管是要判断变量还是方

系统 2019-09-27 17:54:58 1844

Python

python自动化测试之如何解析excel文件

前言自动化测试中我们存放数据无非是使用文件或者数据库,那么文件可以是csv,xlsx,xml,甚至是txt文件,通常excel文件往往是我们的首选,无论是编写测试用例还是存放测试数据,excel都是很方便的。那么今天我们就把不同模块处理excel文件的方法做个总结,直接做封装,方便我们以后直接使用,增加工作效率。openpyxlopenpyxl是个第三方库,首先我们使用命令pipinstallopenpyxl直接安装注:openpyxl操作excel时,行

系统 2019-09-27 17:54:53 1844

Python

聊聊 Python 的单元测试框架(二):nose 和它的继任者 nose2

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article一、nosenose是一个第三方单元测试框架,它完全兼容unittest,并且号称是一个更好用的测试框架。那么nose除了具备unittest的所有功能外,还具有哪些优势呢?1.1用例编写用例的编写方式除了编写继承于unittest.TestCase的测试类外,还可以编

系统 2019-09-27 17:54:38 1844

Python

python 整数越界问题详解

python内部自带大整数运算能力,整数运算不会溢出,只要内存足够,就oK下面的例子演示了两个32位整数加法的情况(通过位运算实现),为了模拟溢出的效果,必须人工的进行位运算,~运算符除了求反,还是二进制的补运算符,运算过后的二进制数字按照补码解释,例如~(00111100)=(11000011)=-61defgetSum(a,b):""":typea:int:typeb:int:rtype:int"""MAX=0X7fffffffMIN=0X800000

系统 2019-09-27 17:54:25 1844

Python

python快速生成验证码

利用python库random,string生成大小写字母和数字的随机验证码importrandomimportstringdefgenerate_code(bit_num):''':parambit_num:生成验证码位数:return:返回生成的验证码'''all_str=string.printable.split('!')[0]code=''.join([random.choice(all_str)foriinrange(bit_num)])ret

系统 2019-09-27 17:54:02 1844