Python - 军军小站|张军博客
Python

python中import reload __import__的区别详解

import作用:导入/引入一个python标准模块,其中包括.py文件、带有__init__.py文件的目录(自定义模块)。importmodule_name[,module1,...]frommoduleimport*|child[,child1,...]注意:多次重复使用import语句时,不会重新加载被指定的模块,只是把对该模块的内存地址给引用到本地变量环境。实例:pythontab.py#!/usr/bin/envpython#encoding:

系统 2019-09-27 17:53:39 2240

Python

python线程同步

一概念线程同步,线程间协同,通过某种技术,让一个线程访问某些数据时,其他线程不能访问这个数据,直到该线程完成对数据的操作为止。临界区(criticalsection所有碰到的都不能使用,等一个使用完成),互斥量(Mutex一个用一个不能用),信号量(semaphore),事件event二event1概念event事件。是线程间通信机制中最简单的实现,使用一个内部标记的flag,通过flag的True或False的变化来进行操作。2参数详解名称含义set()

系统 2019-09-27 17:50:52 2240

Python

python3的url编码和解码,自定义gbk、utf-8的例子

因为很多时候要涉及到url的编码和解码工作,所以自己制作了一个类,废话不多说码上见!#coding:utf-8importurllib.parseclassUrlchuli():"""Url处理类,需要传入两个实参:Urlchuli('实参','编码类型'),默认utf-8url编码方法:url_bm()url解码方法:url_jm()"""def__init__(self,can,mazhi='utf-8'):self.can=canself.mazhi

系统 2019-09-27 17:50:45 2240

Python

python小程序实现刷票功能详解

刷票一般要突破以下限制:1、验证码识别2、同一ip不可连续投票解决办法1、用tesseract工具,链接在此https://code.google.com/p/tesseract-ocr/(人人还是加不了https链接)2、使用代理,国内可以的代理服务器可以从这里找到http://cn-proxy.com/程序语言当然用python浏览器投票的流程如下1、向服务器发送请求,服务器返回验证码和表单2、填好表单,发送到服务器可以用firefox+httpfox

系统 2019-09-27 17:50:15 2240

Python

Python 生成one_hot标签和恢复

首先生成一个主对角全为1的其余全为0的矩阵,比如有n个分类就是n*n,效果如下:随后根据标签列表(或者numpy数组)选取合适的行,比如标签是[9,1,0,0],那么就会选择上图矩阵中对应的9、1、0、0行,得到one_hot标签,如果不熟悉numpy数组的列表切片的(就是说numpy_array[slice]中的slice是列表),可以看下这篇PythonNumpy数组使用列表索引恢复的话就是找列表中为1的下标即可。代码如下:#encoding=utf-

系统 2019-09-27 17:47:51 2240

Python

手写一个python迭代器过程详解

分析我们都知道一个可迭代对象可以通过iter()可以返回一个迭代器。如果想要一个对象称为可迭代对象,即可以使用for,那么必须实现__iter__()方法。在一个类的实例对象想要变成迭代器,就必须实现__iter__()和__next__()方法。调用iter()时,在对象内部默认调用__iter__(),即__iter__()的返回值应该是一个迭代器。for的每次循环中或者next()时,都是自动调用迭代器的__next__()方法,并有一个返回值。实现

系统 2019-09-27 17:46:55 2240

Python

利用python获取某年中每个月的第一天和最后一天

搜索关键字:pythongeteveryfirstdayofmonth参考解答:方法一:>>>importcalendar>>>calendar.monthrange(2002,1)(1,31)>>>calendar.monthrange(2008,2)(4,29)>>>calendar.monthrange(2100,2)(0,28)>>>calendar.monthrange(2016,2)[1]方法二:importdatetimeforxinxran

系统 2019-09-27 17:45:38 2240

Python

Python实现将字符串的首字母变为大写,其余都变为小写的方法

利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。思路:使用capitalize()函数将字符串的首字母转为大写,其余变为小写L1=['AdmIn','anny','LUCY','sandY','wILl']defnormallize(name):returnname.capitalize()L2=list(map(normallize,L1))print(L2)打印如下:['Admin','Anny','Lucy','

系统 2019-09-27 17:54:08 2239

Python

简单了解python单例模式的几种写法

方法一:使用装饰器装饰器维护一个字典对象instances,缓存了所有单例类,只要单例不存在则创建,已经存在直接返回该实例对象。defsingleton(cls):instances={}defwrapper(*args,**kwargs):ifclsnotininstances:instances[cls]=cls(*args,**kwargs)returninstances[cls]returnwrapper@singletonclassFoo(obj

系统 2019-09-27 17:52:23 2239

Python

CentOS 6.3编译安装Python3.6.3

安装前准备(准备编译环境)yuminstallzlib-develbzip2-developenssl-develncurses-develgcc-c++gcc-y获取Python3.6源码#获取源码wgethttps://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz#安装xzyuminstallxz-y#解压tar-xvfPython-3.6.3.tar.xz-C/usr/local/src/安装

系统 2019-09-27 17:51:11 2239

Python

Python图形界面游戏开发

基于tkinter模块的GUIGUI是图形用户界面的缩写,图形化的用户界面对使用过计算机的人来说应该都不陌生,在此也无需进行赘述。Python默认的GUI开发模块是tkinter(在Python3以前的版本中名为Tkinter),从这个名字就可以看出它是基于Tk的,Tk是一个工具包,最初是为Tcl设计的,后来被移植到很多其他的脚本语言中,它提供了跨平台的GUI控件。当然Tk并不是最新和最好的选择,也没有功能特别强大的GUI控件,事实上,开发GUI应用并不是

系统 2019-09-27 17:50:49 2239

Python

python循环练习题(九九乘法表、寻找水仙花数、寻找完美数、猜数字游戏、百钱

猜数字游戏计算机出一个1~100之间的随机数由人来猜计算机根据人猜的数字分别给出提示大一点/小一点/猜对了,并继续输入关于这一题,因为不知道循环的次数和迭代对象,所以选择while循环1、首先用random.randint定义一个随机数2、第一次写的时候把输入的答案放在循环外面,后来想了一下,如果要根据提示再继续输入的话就必须把要每次输入的数字放入循环中,否则无法循环输入3、break在循环里面的作用很重要,注意思考该把他放在哪儿。importrandom

系统 2019-09-27 17:48:25 2239

Python

Python MD5加密实例详解

详解PythonMD5加密Python3下MD5加密#由于MD5模块在python3中被移除#在python3中使用hashlib模块进行md5操作importhashlib#待加密信息str='thisisamd5test.'#创建md5对象hl=hashlib.md5()#Tips#此处必须声明encode#若写法为hl.update(str)报错为:Unicode-objectsmustbeencodedbeforehashinghl.update(

系统 2019-09-27 17:37:44 2239

Python

用python实现的一个简单的网络检测程序

最近由于服务器托管中心频繁出现网络故障问题,因此写了一简单的py程序,用于检测网络状态。实现的原理相当简单,运行ping命令发送30个数据包,如果超过30%的丢失,则认为故障发生,然后做故障处理,如写日志,发邮件。主要函数importosdefmonitoring(server_ip):cmd="ping-c30%s"%server_ipp=os.popen(cmd)info=p.read()p.close()re_lost_str='(\d+)%pack

系统 2019-08-29 23:34:27 2239

Python

python 删除大文件中的某一行(最有效率的方法)

用python处理一个文本时,想要删除其中中某一行,常规的思路是先把文件读入内存,在内存中修改后再写入源文件。但如果要处理一个很大的文本,比如GB级别的文本时,这种方法不仅需要占用很大内存,而且一次性读入内存时耗费时间,还有可能导致内存溢出。所以,需要用另外一个思路去处理。我们可以使用open()方法把需要修改的文件打开为两个文件,然后逐行读入内存,找到需要删除的行时,用后面的行逐一覆盖。实现方式见以下代码。withopen('file.txt','r')

系统 2019-09-27 17:53:58 2238