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

当Python中混进一只薛定谔的猫……

本文原创并首发于公众号【Python猫】,未经授权,请勿转载。原文地址:https://mp.weixin.qq.com/s/-f...Python是一门强大的动态语言,那动态体现在哪里,强大又体现在哪里呢?除了好的方面,Python的动态性是否还藏着一些使用陷阱呢,有没有办法识别与避免呢?沿着它的动态特性话题,猫哥有几篇文章依次探及了:动态修改变量、动态定义函数、动态执行代码等内容,然而,当混合了变量赋值、动态赋值、命名空间、作用域、函数的编译原理等等内

系统 2019-09-27 17:55:00 1866

Python

Python装饰器用法及原理

Python语言有一个比较Pythonic的功能,也是一个具有很强大功能的特性,那就是装饰器。1.Python装饰器的原理Python中的装饰器是通过利用了函数特性的闭包实现的,所以我们需要了解Python闭包的原理,以及函数的功能特性。1.1函数特性函数作为变量传递defadd(x):returnx+1a=add(5)print(a)#运行结果:6函数作为参数传递defadd(x):returnx+1defexecute(f):returnf(3)pri

系统 2019-09-27 17:54:59 1866

Python

Python 200行代码实现一个滑动验证码过程详解

前言做网络爬虫的同学肯定见过各种各样的验证码,比较高级的有滑动、点选等样式,看起来好像挺复杂的,但实际上它们的核心原理还是还是很清晰的,本文章大致说明下这些验证码的原理以及带大家实现一个滑动验证码。实际上这类验证码的校验是分为两个步骤的:1.第一步就是前端的校验。一般来说,登录注册页面在点击提交的时候都会伴随着一个表单提交,在表单提交的时候会有JavaScript事件的触发。如果加入了验证码,那么在表单提交的时候会多加一个额外的验证,判断这个验证码是否已经

系统 2019-09-27 17:54:32 1866

Python

linux 下实现python多版本安装实践

使用pythonbrew复制代码代码如下:easy_installpythonbrew[root@li637-23schirm]#pythonbrew_installWell-done!Congratulations!Thepythonbrewisinstalledas:/root/.pythonbrewPleaseaddthefollowinglinetotheendofyour~/.bashrc[[-s"$HOME/.pythonbrew/etc/ba

系统 2019-09-27 17:54:27 1866

Python

Python 常见函数的基本使用(边学边更)

最近在学习Python,所谓好记性不如烂笔头故借这次学习机会做个笔记,方便今后快速再学习。以下是常见函数的使用说明:range函数该函数用于创建数列,根据参数个数不同对应不同的用法进行说明(1)range(a,b,c)三个参数时,表示创建一个从a~b-1的数组,每c个数取一个值。当c=1时,可省略c,即用法等同于(2)(2)range(x,y)两个参数时,表示创建一个从a~b-1的数组,一共b-a个元素。当x=0时,可省略y,用法等同于(1)(3)rang

系统 2019-09-27 17:53:51 1866

Python

Python面向对象编程——封装

Python面向对象编程——封装从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,还有alex一起装进麻袋,然后把麻袋封上口子。照这种逻辑看,封装=‘隐藏’,这种理解是相当片面的。一、先看如何隐藏在python中用双下划线开头的方式将属性隐藏起来(设置成私有的)#其实这仅仅这是一种变形操作#类中所有双下划线开头的名称如__x都会自动变形成:_类名__x的形式:classA:__N=0#类的数据属性就应该是共享的,但是语法上是可以把类的

系统 2019-09-27 17:53:36 1866

Python

python——类型转换和冗余数据删除

1.类型转换importpandasaspdimportdatetime一般我们拿到日期型数据时,基本都是字符串表示的,该如何将其转换为日期型和日期时间型。法1:dt='2019/06/1316:16:39'd='2017-04-24'str2datetime=datetime.datetime.strptime(dt,'%Y/%m/%d%H:%M:%S')str2date1=datetime.datetime.strptime(d,'%Y-%m-%d')

系统 2019-09-27 17:53:36 1866

Python

Python中栈、队列与优先级队列的实现方法

前言栈、队列和优先级队列都是非常基础的数据结构。Python作为一种“编码高效”的语言,对这些基础的数据结构都有比较好的实现。在业务需求开发过程中,不应该重复造轮子,今天就来看看些数据结构都有哪些实现。0x00栈(Stack)栈是一种LIFO(后进先出)的数据结构,有入栈(push)、出栈(pop)两种操作,且只能操作栈顶元素。在Python中有多种可以实现栈的数据结构。1、listlist是Python内置的列表数据结构,它支持栈的特性,有入栈和出栈操作

系统 2019-09-27 17:52:46 1866

Python

解决Python2.7的UnicodeEncodeError: ‘ascii

python默认环境一般是ascii编码方式,因此Python自然调用ascii编码解码程序去处理字符流,当字符流不属于ascii范围内,就会抛出异常(ordinalnotinrange(128))。参考可通过如下方式查看默认环境编码方式:importsysprintsys.getdefaultencoding()问题解决有两种方式:1、修改默认环境编码方式为utf-8importsysreload(sys)#不加这个会报”找不到setdefaultenc

系统 2019-09-27 17:52:42 1866

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 1866

Python

Python代码展示Numpy和Scipy的子库的描述信息

前言学习一个库的最好的方式是了解这个库的源码和组成原理,有时候源码可能会略显生涩,这时候我们想通过查看文档来了解,所以我们可以通过输出库自带的描述文档来了解一个库。Numpy和Scipy模块numpy提供了数组对象,面向的任何使用者。scipy在numpy的基础上,面向科学家和工程师,提供了更为精准和广泛的函数。scipy几乎实现numpy的所有函数,一般而言,如果scipy和numpy都有这个函数的话,应该用scipy中的版本,因为scipy中的版本往往

系统 2019-09-27 17:52:27 1866

Python

python快速建立超简单的web服务器的实现方法

作为临时测试用python命令来搭建web测试是最好不过的选择了;CD切换到当前目录只需要一句python命令就迅速搭建好了简单的web服务器,pythonlinux自带又无需额外配置安装感觉还是很好用的;python开启web服务器命令python-mSimpleHTTPServer8080端口号可以任意指定一个没有被占用的端口,但必须能通过防火墙;执行完上面命令后,直接输入IP地址加端口号就行了http://:端口号/路径如:http://192.16

系统 2019-09-27 17:52:09 1866

Python

插入、冒泡、快排、选择排序算法python2代码实现

目录一、插入排序二、冒泡排序三、快排(递归)四、选择排序生成一个长度为10的范围在0~20的随机数组importrandomtemp_list=[]whileTrue:num=random.randint(0,20)ifnumnotintemp_list:temp_list.append(num)iflen(temp_list)==10:breakprinttemp_list一、插入排序definsert(list):length=len(list)for

系统 2019-09-27 17:51:37 1866

Python

数据挖掘入门读物《Python数据挖掘入门与实践》豆瓣评分[7.70]

好书推荐、视频分享,公众号"读书ReadBook"与您一起进步下载地址……1、点击阅读原文或者地址https://ebooklist.mobi/2019/05/20/6465.html2、回复关键字11730直接获取下载链接,好书推荐、视频分享,公众号"读书ReadBook"与您一起进步图书简介……本书作为数据挖掘入门读物,介绍了数据挖掘的基础知识、基本工具和实践方法,通过循序渐进地讲解算法,带你轻松踏上数据挖掘之旅。本书采用理论与实践相结合的方式,呈现了

系统 2019-09-27 17:51:09 1866

Python

[转] Python之time模块的时间戳、时间字符串格式化与转换

fromhttps://blog.csdn.net/mighty13/article/details/78147357Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。time.struct_time(tm_year=2017,tm_mon=10,tm_mday=1,tm_

系统 2019-09-27 17:50:56 1866